运用数组解决问题

给定两个数组,将两个位置元素进行互换

交换数组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);
		}
	}
}

猜你喜欢

转载自blog.csdn.net/weixin_42316524/article/details/106321623