java - 限制用户扫描仪在Java中输入字符串的字符数

标签 java string input string-length

此代码应该在输入用户名时打印用户名,并将其长度限制为 20 个字符,但仅当用户名长度超过 20 个字符时才有效。当它低于 20 时,我收到错误。有关如何解决此问题的任何想法吗?

谢谢。

String name;

Scanner textIn = new Scanner(System.in);
System.out.print("Enter your Name ");
name = textIn.nextLine();

String cutName = name.substring(0, 20);
if (name.length()>20) {
    name = cutName;
System.out.print("Hello " +name+"!");
}

最佳答案

只需取 20 和 String 的长度之间较低的索引即可。

name.substring(0, Math.min(20,name.length()));

关于java - 限制用户扫描仪在Java中输入字符串的字符数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36937124/

相关文章:

java - 从 Cassandra 检索数据 block

java - 将 ArrayList 元素存储在字符串中

c++ - 在 C++ 中传递 C 字符串的问题

javascript - 点击10次后如何禁用输入属性?

php - 从 XML 标签生成表单字段

java - 如何禁用或关闭来自系统托盘的通知?

java - 说唱 : How to access Object in ViewPart

java - 使用 AssertJ 在没有测试失败的情况下在测试后关闭应用程序

Javascript String.fromCharCode 区分大小写吗?

mysql 的 php 输入掩码