Java에서 compareTo를 덮어 쓰려고하는데 다음과 같이 작동합니다. 각각 k 개의 문자열을 포함하는 두 개의 문자열 배열이 있습니다. compareTo 메소드는 각 배열의 k 번째 요소를 비교하면서 순서대로 단어를 검색합니다. 그런 다음 배열이 바로 정렬됩니다. 현재 가지고있는 코드는 다음과 같습니다. 그러나 제대로 작동하지 않습니다.Java Implementing Comparable
for-loop 외부에 return 문이 필요합니다. for-loop return 문 중 하나에 항상 도달하기 때문에이 return 문이 리턴해야하는 것이 확실하지 않습니다.
또한 continue
을 올바르게 사용하고 있습니까?
public int compareTo(WordNgram wg) {
for (int k = 0; k < (this.myWords).length; k++) {
String temp1 = (this.myWords)[k];
String temp2 = (wg.myWords)[k];
int last = temp1.compareTo(temp2);
if (last == 0) {
continue;
} else {
return last;
}
}
}
어떻게 제대로 작동하지 않습니까? 예외? 원하는대로 정렬하지 않습니까? – AntonH
"* 제대로 작동하지 않습니다. *"는별로 도움이되지 않습니다. 왜 작동하지 않습니까? 어떻게 테스트합니까? [문제를 재현하는 단순하지만 완전한 예를 보여줄 수 있습니까?] (http://stackoverflow.com/help/mcve)? – assylias
내가 처음 실행하는 첫 번째 문제는 for-loop 밖에서 return 문이 필요하다는 것입니다. for-loop return 문 중 하나에 항상 도달하기 때문에이 return 문이 리턴해야하는 것이 확실하지 않습니다. – user2904796