运用数组解决问题

更新时间:2020-05-29 14:01:29 点击次数:845次
给定两个数组,将两个位置元素进行互换
交换数组a{1,2,3,4},b{5,6,7,8}
借助中间量进行交换(只可以交换长度相等的数组)

public class Test1{
public static void main(String[] args){
int[] a = new int[]{1,2,3,4};
int[] b = new int[]{5,6,7,8};
for(int i=0;i<a.length;i++){
int c = a[i];
a[i] = b[i];
b[i] = c;
}
for(int value:a){
System.out.println(value);
}
System.out.println("===================================");
for(int value:b){
System.out.println(value);
}
}
}

进行地址交换(可以交换任意长度的数组)


public class Test1{
public static void main(String[] args){
int[] a = new int[]{1,2,3,4};
int[] b = new int[]{5,6,7,8};
int[] temp = a;
a = b;
b = temp;
for(int value:a){
System.out.println(value);
}
System.out.println("===================================");
for(int value:b){
System.out.println(value);
}
}
}

利用数组存储2-100之间的所有素数
public class Test{
//创建一个数组存储2-100之间的素数
public static void main(String[] args){
int count = 0;
for(int i=2;i<=100;i++){
boolean b = false;
for(int num=2;num<=i/2;num++){
if(i%num==0){
b = true;
break;
}
}
if(b==false){
count++;
}
}
System.out.println("一共有"+count+"个素数");
int[] priamNumberarray = new int[count];
int index = 0;
for(int i=2;i<=100;i++){
boolean b = false;
for(int num=2;num<=i/2;num++){
if(i%num==0){
b = true;
break;
}
}
if(!b){
priamNumberarray[index++]=i;
}
}
for(int value:priamNumberarray){
System.out.println(value);
}
}
}

冒泡排序
public class Test{
public static void main(String[] args){
int[] a = new int[]{5,4,1,3,2};
for(int i=0;i<a.length-1;i++){
for(int j=a.length-1;j>i;j--){
if(a[j]<a[j-1]){
int temp = a[j];
a[j] = a[j-1];
a[j-1] = temp;
}
}
}
for(int value:a){
System.out.println(value);
}
}
}

本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责,本站只提供参考并不构成任何投资及应用建议。本站是一个个人学习交流的平台,网站上部分文章为转载,并不用于任何商业目的,我们已经尽可能的对作者和来源进行了通告,但是能力有限或疏忽,造成漏登,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

回到顶部
嘿,我来帮您!