有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如果用户在字符串中输入“”(空格),如何将零设置为整数

String[]lucky=新字符串[20]

int[]Lucky=new int[Lucky.length]

    for(int i = 0 ; i < 20 ; i++){
        lucky[i] = JOptionPane.showInputDialog("Enter " +(i+1) +" number : ");
        Lucky[i] = Integer.parseInt(lucky[i]);
        if(lucky[i] == " "){
            Lucky[i] = 0;
        }
        System.out.println("The "+(i+1) +" number user input : "+Lucky[i]);  
    }

共 (1) 个答案

  1. # 1 楼答案

    首先,检查空字符串的方法是不正确的。你应该使用字符串#isEmpty(),而不是do==”

    其次,如果试图将空字符串解析为整数,这将失败,出现NumberFormatException(因此您会看到程序停止)

    因此,与其尝试将字符串解析为整数,然后检查给定字符串是否为空,不如先检查它是否为空,然后将其解析为整数对象

    理想情况下,您应该将代码修改为以下内容:

    for (int i = 0; i < 20; i++) {
        lucky[i] = JOptionPane.showInputDialog("Enter " + (i + 1) + "number: ");
        if (lucky[i].isEmpty()) {
            luckyInt[i] = 0;
        } else {
            luckyInt[i] = Integer.parseInt(lucky[i]);
        }
        System.out.println("The "+(i+1) +" number user input : "+ luckyInt[i]);
    }