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

如何将 try 和 catch 合并到此数组列表中?

如何将 try 和 catch 合并到此数组列表中?

紫衣仙女 2021-12-18 15:35:26
当我输入正整数以外的任何用户输入时,它会崩溃。我尝试在 Scanner 之前加入 try 和 catch,但是 for 循环的 max_players 和输入有一个红色下划线。import java.util.*;public class NameInput {public static void main(String [] args) {    ArrayList<String> players = new ArrayList<String>();    System.out.println("How many players are going to play the game?");    Scanner input = new Scanner(System.in);    int max_players = input.nextInt();    for(int i = 1; i <= max_players; i++) {        System.out.println("\nPlayer " + i + ", please state your name: ");        String name =input.next();        players.add(name);    }    System.out.println(players.size());    System.out.println(players);  }}更新:为什么在我给用户命名后问题会重新出现?import java.util.*;public class NameInput {public static void main(String [] args) {ArrayList<String> players = new ArrayList<String>();int max_players = 0;Scanner input = new Scanner(System.in);while (true) {    System.out.println("How many players are going to play the game?");    try {        max_players = input.nextInt();    } catch (InputMismatchException ee) {        System.out.println("try again");        input.nextLine ();    }    for(int i = 1; i <= max_players; i++) {        System.out.println("\nPlayer " + i + ", please state your name: ");        String name =input.next();        players.add(name);    } } } }
查看完整描述

2 回答

?
跃然一笑

TA贡献1826条经验 获得超6个赞

这可以使用循环并捕获异常来完成


int max_players = 0;

Scanner input = new Scanner(System.in);

while (true) {

    System.out.println("How many players are going to play the game?");

    try {

        max_players = input.nextInt();

        break;

    } catch (InputMismatchException ee) {

        System.out.println("try again");

        input.nextLine ();

    }

}


查看完整回答
反对 回复 2021-12-18
?
肥皂起泡泡

TA贡献1829条经验 获得超6个赞

我尝试在 Scanner 之前加入 try 和 catch,但是 for 循环的 max_players 和输入有一个红色下划线。

要解决此问题,您需要在 try-catch 块之外声明 max_players,并为其初始化默认值。


查看完整回答
反对 回复 2021-12-18
  • 2 回答
  • 0 关注
  • 272 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号