我有这个数组:
int[] arr = {-1, -2, 0, 1, 2};
从这个数组中我必须制作2个数组:一个是负数,另一个是正数。
我尝试了下面的代码,但它不起作用 - 它填充了我用0制作的数组为正数:
int[] arr1 = new int[arr.length];
for(int i=0;i<arr.length;i++){
if(arr[i]<0)
arr1[i]=arr[i];
System.out.println(java.util.Arrays.toString(arr1));
答案 0 :(得分:-2)
您可以尝试这样的事情:
int[] arr= {-1, -2, 0, 1, 2};
int p=0;
int n=0;
for(int i=0; i<arr.length-1; ++i) {
if(arr[i]>=0) {
p=p+1;
} else {
n=n+1;
}
}
int[] posarr=new int[p];
int[] negarr=new int[n];
p=0;
n=0;
for(int i=0; i<arr.length-1; ++i) {
if(arr[i]>=0) {
posarr[p]=arr[i];
p=p+1;
} else {
negarr[n]=arr[i];
n=n+1;
}
}