0
코드를보고 의견을 말하십시오. 내 디버거에서도 102 == 102로 표시되어 나를 거짓으로 표시합니다 ... 상상할 수 있습니까?믿을 수없는 Java 동등 테스트 오류
import java.util.Arrays;
/**
* Created by Idris on 18/11/14.
*/
public class codingGame {
static boolean exists(int[] ints, int k) {
Integer j = ints[ints.length/2];
if (j.equals(k)){
return true;
}
if (ints.length == 1) return false;
if (k > j) {
int[] intb = Arrays.copyOfRange(ints, ints.length/2, ints.length);
exists(intb, k);
}
if (k < j) {
int[] intb = Arrays.copyOfRange(ints, 0, ints.length/2);
exists(intb, k);
}
return false;
}
public static void main (String[] args) {
int[] ints = {-9, 14, 37, 102};
System.out.println(exists(ints, 102)); // true
System.out.println(exists(ints, 36)); // false
}
}
함수는 호출 된 함수를 자동으로 반환하지 않습니다. – user2357112
또한 '정수'는 'int'가 아닙니다. 이건 중요하다. – user2357112
'// true' 대신'false /'를 쓰거나 실제가 아닌 예상됨을 나타낼 수도 있습니다. –