Java:在数组中实现具有重复值的循环
我的任务是在数组中输入名称。如果已经输入了名字,程序必须对此发出警告,并以相同的号码重新输入玩家 这是我的代码:Java:在数组中实现具有重复值的循环,java,arrays,loops,duplicates,Java,Arrays,Loops,Duplicates,我的任务是在数组中输入名称。如果已经输入了名字,程序必须对此发出警告,并以相同的号码重新输入玩家 这是我的代码: public void enterNames() { for (int i=0; i<nameOfPlayers.length; i++) { do { // isDuplicate is a Boolean initialized to false
public void enterNames() {
for (int i=0; i<nameOfPlayers.length; i++)
{
do
{
// isDuplicate is a Boolean initialized to false
System.out.println("CHECK": + isDuplicate);
System.out.println("Enter player " + (i+1) + ":");
nameOfPlayers[i] = in.next();
for (int k=0; k<nameOfPlayers.length; k++)
{
if (k!=i && nameOfPlayers[i].equals(nameOfPlayers[k]))
{
isDuplicate = true;
break;
}
}
} while (isDuplicate = false);
}
}
public void enterNames(){
对于(inti=0;i,您遇到的问题是由于
} while (isDuplicate = false);
应该是(注意双精度==)
除此之外,您的代码效率很低。如果您真的需要两个数组,您可能会做得更好,否则最好使用链表。您遇到的问题是因为
} while (isDuplicate = false);
应该是(注意双精度==)
除此之外,您的代码效率很低。如果您真的需要两个数组,您可能会做得更好,否则最好使用链表。您遇到的问题是因为
} while (isDuplicate = false);
应该是(注意双精度==)
除此之外,您的代码效率很低。如果您真的需要两个数组,您可能会做得更好,否则最好使用链表。您遇到的问题是因为
} while (isDuplicate = false);
应该是(注意双精度==)
除此之外,您的代码效率很低。如果您真的需要两个数组,您可能会做得更好,否则最好使用链表。您的虽然不正确,但
while (isDuplicate = false);
将false
分配给isDuplicate
,其副作用是也计算为false
while (isDuplicate == false);
还是更短的
while (!isDuplicate);
您的不正确,但
while (isDuplicate = false);
将false
分配给isDuplicate
,其副作用是也计算为false
while (isDuplicate == false);
还是更短的
while (!isDuplicate);
您的不正确,但
while (isDuplicate = false);
将false
分配给isDuplicate
,其副作用是也计算为false
while (isDuplicate == false);
还是更短的
while (!isDuplicate);
您的不正确,但
while (isDuplicate = false);
将false
分配给isDuplicate
,其副作用是也计算为false
while (isDuplicate == false);
还是更短的
while (!isDuplicate);
答案经过改革,使用列表添加越来越多的元素,而无需预定义大小
将while(isDuplicate==false);
更改为while(!isDuplicate);
publicstaticvoidmain(字符串[]args){
扫描仪=新的扫描仪(System.in);
List nameOfPlayers=new ArrayList();
布尔值isDuplicate=false;
int i=0;
做{
System.out.println(“输入player”+(i+1)+“:或Q表示退出”);
字符串输入=scanner.next();
if(!input.equalsIgnoreCase(“Q”)){
if(nameOfPlayers.contains(输入)){
isDuplicate=真;
}否则{
图层名称。添加(输入);
isDuplicate=假;
}
System.out.println(“检查:+isDuplicate”);
}否则{
打破
}
i++;
}而(!isDuplicate);
}
输入玩家1:或Q表示退出
安克尔
检查:错误
输入玩家2:或Q表示退出
辛格尔
检查:错误
输入玩家3:或Q表示退出
安克尔
核对:正确
答案,用于添加越来越多没有预定义大小的元素
将while(isDuplicate==false);
更改为while(!isDuplicate);
publicstaticvoidmain(字符串[]args){
扫描仪=新的扫描仪(System.in);
List nameOfPlayers=new ArrayList();
布尔值isDuplicate=false;
int i=0;
做{
System.out.println(“输入player”+(i+1)+“:或Q表示退出”);
字符串输入=scanner.next();
if(!input.equalsIgnoreCase(“Q”)){
if(nameOfPlayers.contains(输入)){
isDuplicate=真;
}否则{
图层名称。添加(输入);
isDuplicate=假;
}
System.out.println(“检查:+isDuplicate”);
}否则{
打破
}
i++;
}而(!isDuplicate);
}
输入玩家1:或Q表示退出
安克尔
检查:错误
输入玩家2:或Q表示退出
辛格尔
检查:错误
输入玩家3:或Q表示退出
安克尔
核对:正确
答案,用于添加越来越多没有预定义大小的元素
将while(isDuplicate==false);
更改为while(!isDuplicate);
publicstaticvoidmain(字符串[]args){
扫描仪=新的扫描仪(System.in);
List nameOfPlayers=new ArrayList();
布尔值isDuplicate=false;
int i=0;
做{
System.out.println(“输入player”+(i+1)+“:或Q表示退出”);
字符串输入=scanner.next();
if(!input.equalsIgnoreCase(“Q”)){
if(nameOfPlayers.contains(输入)){
isDuplicate=真;
}否则{
图层名称。添加(输入);
isDuplicate=假;
}
System.out.println(“检查:+isDuplicate”);
}否则{
打破
}
i++;
}而(!isDuplicate);
}
输入玩家1:或Q表示退出
安克尔
检查:错误
输入玩家2:或Q表示退出
辛格尔
检查:错误
输入玩家3:或Q表示退出
安克尔
核对:正确
答案,用于添加越来越多没有预定义大小的元素
将while(isDuplicate==false);
更改为while(!isDuplicate);
publicstaticvoidmain(字符串[]args){
扫描仪=新的扫描仪(System.in);
List nameOfPlayers=new ArrayList()