无法在基本类型int上调用length()

时间:2018-05-24 02:13:09

标签: validation user-input variable-length

我试图将学生ID的用户输入限制为8个字符的长度,但是当我使用input.length()时,它告诉我我不能在原始类型int上调用length()。有什么方法可以轻松地修复/达到我想要的另一种方式吗?错误发生在第四行。

input.nextLine();
System.out.print("Please enter your Student ID:  "); //Prompts for Student ID
int studentId = input.nextInt();
if(studentId.length() != 8)
    {
       System.out.println("Student ID must be 8 characters");
    }

1 个答案:

答案 0 :(得分:0)

您可以使用这样的简单函数进行验证

bool validId(int n) {
    if (n < 10) return 1;
    int length = 1 + numDigits(n / 10);
    if (length == 8) return true;
    else return false;
}

希望有所帮助

它也抽象出来让它更容易阅读:)