我有以下疑问:我可以以某种方式使用条件三元运算符进行字符串连接吗?
我正在尝试做这样的事情:
String sql = "insert into TirConsolidatoPolizzaFondo "
+ "(Polizzaid, FondoID, isQuadraturaOk, ReteVendita, CodiceConferimento, PercentualeRendimentoDaInizioGestione, "
+ "DataInizioGestione, PercentualeRendimentoDaInizioAnno, DataInizioAnno, PercentualeRendimentoDaInizioTrimestre, "
+ "DataInizioTrimestre, DataCalcoloBF, ValoreNavBF, DataRiferimentoNavBF, ControvaloreFinaleBF, ValoreNavPUC, "
+ "DataRiferimentoNavPUC, ControvaloreFinalePUC, NumeroQuotePUC, DeltaControvaloreFinale, TIMESTAMP, "
+ "DataValutaUltimaOperazione, MsgPercentualeRendimentoDaInizioAnno, MsgPercentualeRendimentoDaInizioGestione, "
+ "MsgPercentualeRendimentoDaInizioTrimestre, isTirAnomalo, CodiceLineaBF) "
+ "values"
+ "(" +
qsTirPF.getPolizzaid() != null ? qsTirPF.getPolizzaid() : "null";
这意味着在第一个字符串主干我想连接评估的值:
qsTirPF.getPolizzaid() != null ? qsTirPF.getPolizzaid() : "null";
但是 Eclipse 给我签名了这个错误:
Type mismatch: cannot convert from Object&Comparable<?>&Serializable to String
为什么?怎么了?我该如何解决这个问题?
最佳答案
首先,您应该将三元条件放在括号内:
(qsTirPF.getPolizzaid() != null ? qsTirPF.getPolizzaid() : "null")
此外,您应该验证 qsTirPF.getPolizzaid() 是否返回字符串
关于java - 我可以在字符串连接中使用条件三元运算符吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38015121/