import java.util.*;import java.util.Scanner;class Test5{ public static void main(String[] args) { int i,j,m,n,t,x,k; int[] a=new int[100]; int[] b=new int[100]; int[] c=new int[100]; int[] d=new int[100]; Scanner in=new Scanner(System.in); i=0;j=0; while(in.hasNextInt()) a[i++]=in.nextInt(); while(in.hasNextInt()) b[j++]=in.nextInt(); k=0; for(m=0;m<i;m++) c[k++]=a[m]; for(n=0;n<j;n++) c[k++]=b[n]; for(i=0;i<k-1;i++) for(j=i+1;j<k;j++) if(c[i]<c[j]) { t=c[i]; c[i]=c[j]; c[j]=t; } j=0;x=0; for(i = 0;i < k;i++) { if(c[i] == x) { d[j++]=x; continue; } if(c[i] == c[i+1] && i+1 < k ) { x = c[i]; continue; } System.out.printf("%d ",c[i]); } System.out.printf("\n"); for(i=0;i<j;i++) System.out.printf("%d ",d[i]); }}分析代码
时间: 2024-04-01 11:31:40 浏览: 18
Einleser:java.util.Scanner 的示例
这段代码是一个 Java 程序,用于实现两个数组的合并、去重和排序。程序首先使用 Scanner 类从控制台输入两个数组 a 和 b,然后将它们合并到数组 c 中。接着,使用冒泡排序对数组 c 进行排序,并使用循环遍历数组 c,输出不重复的元素。如果有重复元素,则将其存储到数组 d 中,并在遍历结束后输出数组 d 中的元素。
需要注意的是,在输出不重复元素时,程序使用了一个变量 x 来存储上一个输出的元素,以便和当前元素进行比较,避免重复输出。同时,在判断重复元素时,程序使用了一个下标 i+1 来判断当前元素是否和下一个元素重复,需要注意边界条件 i+1 < k。
阅读全文