java中出现String index out of range: 18报错
部分代码如下:
控制台如下:
控制台:
请输入身份证号
51010822000222093X
Exception in thread “main” java.lang.StringIndexOutOfBoundsException: String index out of range: 18
at java.base/java.lang.StringLatin1.charAt(StringLatin1.java:48)
at java.base/java.lang.String.charAt(String.java:1515)
at login.checkUserId(login.java:163)
at login.register(login.java:87)
at login.main(login.java:17)
解决方法:
通过debug功能 一行一行运行代码发现代码问题
发现字符串最后一个索引应该是lenth()-1
更改为
解决BUG