다음 코드는 기본적으로 모든 코어를 추가하지만 시퀀스는 위쪽으로 셀 수는 없습니다. 어떤 아이디어가 잘못 됐나요?시퀀스가 위쪽으로 계산되지 않습니다.
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())
미리 조언 해 주셔서 감사합니다.
왜 이런 코드를 작성하겠습니까 ?? 특히 두 번째 삼원 연산자는 정말 못생긴 해킹입니다 ... 만약 당신이 부분으로 나누면 아마 잘못 될 수있는 것을 정확히 쉽게 찾아 낼 수 있습니다. –
3 진 연산자에서 사용되는 명령문에 부작용이있는 것은 바람직하지 않습니다. 제 생각에 코드가 이해하기 쉽고 어떤 if 블록을 사용했는지 추측 할 수 있습니다. –
이 부분을 하나의 고립 된 부분으로해서는 안됩니까? Numeric.sequence (row1.File_Name, 1, +1) .toString()) == null입니까? (String) globalMap.get (row1.File_Name.toUpperCase() ")": (String) globalMap.get (row1.File_Name.toUpperCase()). 거기에는 없어야하는 괄호가 있습니다. 나는 ""으로 표시했다. – Wandang