为了账号安全,请及时绑定邮箱和手机立即绑定

请问下面的代码,为什么不会提示id重复?跪求解答

public void createPlayer()  {

System.out.println("------------------创建玩家---------------------");

Integer id;

String name;

int i=0;

for(int j=0;j<2;j++) {

while(true) {

try{

System.out.println("请输入第"+(i+1)+"个玩家的id:");

id=dllx.nextInt();

if(player.contains(new Players(id,null))){

System.out.println("你输入的id已被使用!请重新输入!");

continue;

}

break;

} catch (Exception  e) {

System.out.println("你的输入有误,请重新输入!");

dllx=new Scanner(System.in);

continue;

}

}

while(true){

System.out.println("请输入第"+(i+1)+"个玩家的姓名:");

name =dllx.next();

if(player.contains(new Players(id,name))) {

System.out.println("你输入的名字已被使用!请重新输入!");

continue;

}

break;

}

player.add( new Players(id,name));

i++;

}

}


正在回答

2 回答

简单看了一下,还没调试,在分别判断名字或者id的时候,比较一个对象就可以了, 你方法中好像是传入了2个对象。。。

if(player.contains(new Players(id,null))){

System.out.println("你输入的id已被使用!请重新输入!");

continue;

你仔细梳理下这个逻辑。。。

0 回复 有任何疑惑可以回复我~

你说不会提示用户名相同的话,那就是 contains()方法有问题吧。 你仔细调试下。。。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

请问下面的代码,为什么不会提示id重复?跪求解答

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信