当前位置:首页 » 存储配置 » 存储到一个新的数组中

存储到一个新的数组中

发布时间: 2022-07-23 01:27:18

java编程将a,b数组中不同的数字保存到一个新的数组中

建立一个临时数组 定义一个length来记录新加入的元素个数 然后把a b 的元素逐个加入到新数组中 加入前先用Arrays.binarySearch 检查新数组中是否已经有该元素 最后返回

以下代码仅供参考

importjava.util.Arrays;

publicclassTestCircle{
publicstaticvoidmain(Stringargs[]){
int[]a=newint[]{1,3,5,2,9,5};
int[]b=newint[]{2,5,7,10,9,11};

int[]temp=addArray(a,b);

System.out.print("[");
for(inti:temp){
System.out.print(i+"");
}
System.out.print("]");

}

staticint[]addArray(int[]a,int[]b){
int[]temp=newint[a.length+b.length];
intlength=0;

for(inti:a){
Arrays.sort(temp);
if(Arrays.binarySearch(temp,i)<0){
temp[temp.length-length-1]=i;
length++;
}

}

for(inti:b){
Arrays.sort(temp);
if(Arrays.binarySearch(temp,i)<0){
temp[temp.length-length-1]=i;
length++;
}
}

returnArrays.OfRange(temp,temp.length-length,temp.length);
}

}

若你能保证a中的元素都是无重复的话 可以简化成以下

importjava.util.Arrays;

publicclassTestCircle{
publicstaticvoidmain(Stringargs[]){
int[]a=newint[]{1,3,5,2,9};
int[]b=newint[]{2,5,7,10,9,11};

Arrays.sort(a);

int[]temp=addArray(a,b);

System.out.print("[");
for(inti:temp){
System.out.print(i+"");
}
System.out.print("]");

}

/**
*这里a数组必须是有序不重复的
*/
staticint[]addArray(int[]a,int[]b){
int[]temp=Arrays.Of(a,a.length+b.length);
intlength=a.length;

for(inti:b){
if(Arrays.binarySearch(a,i)<0){
temp[length]=i;
length++;
}
}

returnArrays.Of(temp,length);
}

}

⑵ 请问如何将 关联数组 里面的值提出 来存到一个新的数组中

在学习核心问题是:如何将 数据存放在数组$datay 里面!可能有的师兄还不明白:目的:1.从数据库中提出一系列数据,比如1254,4545,54545,545,54564,54564。分别代表了一月到六月的上网流量;2.将这些数字的高度作为Y坐标(Y轴,这个不会不这道吧?),3.横坐标是X轴,是1,2,3,4,5,64.以直立方图(这个不会不知道把?) 动态,显示出来,是动态的显示,不是静态的哦。

⑶ 将数组序号存入一个新的数组

其实用ArrayList存放数据更好,可以动态增加。像现在这样,要先判断数组位数。如果先申请6位大小数组,如果实际只有4位数,那么还有2为空间是不放东西的。而int默认是0,所以你输出的结果就会有6位,最后2位为0。这样就不合理。但像我下面写的,虽然解决这个问题,但是增加了代码。所以还是用ArrayList存放更好。
不过还是把数组的代码放下面

public class test {
public static void main(String args[]){
int nums[]={31,22,45,0,0,87};
int length=nums.length;
int newnums[]=new int[length];
int t=0;
//先判断有多少个大于30的数
for(int i=0;i<nums.length;i++){
if(nums[i]>30){
newnums[t]=nums[i];
t++;
}
}
//有t个数
int result[]=new int[t];
for(int j=0;j<t;j++){
result[j]=newnums[j];
System.out.println(newnums[j]);//输出结果
}
}
}

热点内容
我姐姐手机上的密码多少的短视频 发布:2025-07-02 13:09:10 浏览:799
轩逸安全配置全系一样吗都有哪些 发布:2025-07-02 13:07:30 浏览:522
合肥少儿编程哪家好 发布:2025-07-02 13:05:12 浏览:880
安卓快手极速版怎么签到 发布:2025-07-02 12:58:21 浏览:692
我与编程作文 发布:2025-07-02 12:57:33 浏览:230
安卓机在哪里调振动大小 发布:2025-07-02 12:53:31 浏览:849
linux系统如何查看服务器ip地址 发布:2025-07-02 12:51:57 浏览:245
dlna怎么指定服务器地址 发布:2025-07-02 12:51:08 浏览:215
ftp默认端口是多少 发布:2025-07-02 12:50:32 浏览:736
java隐藏 发布:2025-07-02 12:36:39 浏览:202