我有一个整数数组,需要找到最接近零的元素(正数优先于负数)。
这是我目前的代码:
public class CloseToZero {
public static void main(String[] args) {
int[] data = {2,3,-2};
int curr = 0;
int near = data[0];
// find the element nearest to zero
for ( int i=0; i < data.length; i++ ){
curr = data[i] * data[i];
if ( curr <= (near * near) ) {
near = data[i];
}
}
System.out.println( near );
}
}
目前我得到了一个-2的结果,但是我应该得到2。我做错了什么?