这里是从数组中的元素列表中打印不同元素的代码(我是从网站上获得的)。
package pattern;
import java.util.*;
class Pattern{
public static void main(String[] args){
int[] num=new int[6];
//method to enter elements inside 'num' array
System.out.println("Enter the numbers: ");
getEle(num);
//method to print distinct elements from array
System.out.println("Printing distinct elements:");
printDis(num);
}
public static void getEle(int[] num){
Scanner in=new Scanner(System.in);
for(int i=0;i<num.length;i++)
{
num[i]=in.nextInt();
}
}
public static void printDis(int[] num){
for (int i=0; i<num.length; i++){
int j;
for ( j=0; j<=i; j++)
{
if (num[i] == num[j])
break;
}
if (i == j)
System.out.print(num[i]+" ");
}
}
}
基本上我没有得到&#39; printDis&#39;功能即。
public static void printDis(int[] num){
for (int i=0; i<num.length; i++){
int j;
for ( j=0; j<=i; j++)
{
if (num[i] == num[j])
break;
}
if (i == j)
System.out.print(num[i]+" ");
}
}
有人可以解释我的循环以及这个
if (num[i] == num[j])
break;
和。,
if (i == j)
System.out.print(num[i]+" ");
此代码可以。
答案 0 :(得分:0)
这行代码:
if (num[i] == num[j])
break;
当在数组中找到两个相同的元素时,会突破for ( j=0; j<=i; j++)
循环。
这一个:
if (i == j)
System.out.print(num[i]+" ");
正在打印数组的匹配元素。
基本上整个代码在num[]
的另一个迭代内迭代数组num[]
。当找到两个相同的元素时,它会打印出在此数组中出现两次的元素。