我有以下代码,它基本上会附加所有corect,但序列不会向上计数。任何想法都有错吗?
globalMap.containsKey(row1.File_Name.toUpperCase()) ?
(String)globalMap.get(row1.File_Name.toUpperCase()) :
(globalMap.put(row1.File_Name.toUpperCase(), row1.File_Name.toUpperCase() +
"-ID-" + Numeric.sequence(row1.File_Name, 1, +1).toString()) == null ?
(String)globalMap.get(row1.File_Name.toUpperCase()) :
(String)globalMap.get(row1.File_Name.toUpperCase())
提前感谢您的建议!
答案 0 :(得分:1)
我没有看到你实际上在重复递增任何值的位置,也许这就是你的序列没有增加的原因。
if(globalMap.containsKey(row1.File_Name.toUpperCase())){
(String)globalMap.get(row1.File_Name.toUpperCase())
}else{
if((globalMap.put(row1.File_Name.toUpperCase(), row1.File_Name.toUpperCase() +
"-ID-" + Numeric.sequence(row1.File_Name, 1, +1).toString()) == null){
(String)globalMap.get(row1.File_Name.toUpperCase());
}else{
(String)globalMap.get(row1.File_Name.toUpperCase())
}
}
以下是if / else语句的代码。我没有编译这段代码,并且不确定它是否会编译,因为我无法轻易跟踪这些括号。
答案 1 :(得分:0)
啊,想通了 - 不得不改变真假条件,因为我想要计算相同的条件。
我猜我的大脑昨天太乱了 - 新的一天,精神焕发,完成了。
globalMap.containsKey(row1.File_Name.toUpperCase()) ?
(globalMap.put(row1.File_Name.toUpperCase(), row1.File_Name.toUpperCase() +
"-ID-" + Numeric.sequence(row1.File_Name, 1, +1).toString()) == null ?
(String)globalMap.get(row1.File_Name.toUpperCase()) :
(String)globalMap.get(row1.File_Name.toUpperCase())
):
(String)globalMap.get(row1.File_Name.toUpperCase())