不用面向对象语言编写两个数组,求两个数组的交集。超详细

    xiaoxiao2022-07-13  141

     

     

    /*本篇目的: 1.让用户自定义两个数组的长度, 2.随机给数组录入一些数据, 3.对比两个数据中是否有相同的元素。 */ import java.util.*; public static void main(String[] args){ Scanner input = new Scanner(System.in); //要从控制台录入数据不要忘了建立扫描器 System.out.println("请确认第一组数组的长度");//先让用户确认第一组数组的长度 int a = input.nextInt();//随意用一个a变量去接收这个值 int[] one = new int[a]; //把a放到int后面的重括号里 for(int i=0;i<one.length;i++){ //这里给数组赋值用for循环 System.out.println("请录入第一组数组里面的值");//提示用户该录入数据了 one[i] = input.nextInt();//用i去对应数组的下标 } System.out.println("请确认第二组数组的长度");//第二组数据,代码跟上一步没啥不同 int b = input.nextInt(); int[] two =new int[b]; for(int i=o;i<two.length;i++){ //因为作用域的问题,这里还是可以用i System.out.println("请录入第二组数组里面的值"); two[i] = input.nextInt(); } System.out.print("两个数组中相同的元素为:");//这个地方不解释了,这句话放里面会被输出N遍,欢迎大佬指教 for(int i=0;i<one.length;i++){ //这里,每次循环一次,两个数组都要比较一遍 for(int j=0;j<two.length;j++){ if( one[i] == two[j] ){ //举个栗子:如果one[0]的值为99,two[2]的值也为99,那么one[0]==two[2] System.out.print(one[i]+"\t");//输出相等的值 } } } } //运行和测试结果在下面

    最新回复(0)