首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >java: String索引超出范围:6

java: String索引超出范围:6
EN

Stack Overflow用户
提问于 2011-12-08 08:27:27
回答 4查看 12.8K关注 0票数 0

我的java代码中出现了以下错误:

线程“主”

中的java.lang.StringIndexOutOfBoundsException异常:超出范围的字符串索引:6

...which发生在以下行:

代码语言:javascript
复制
if (strFactor.charAt(j) == strProduct.charAt(k)) {

以下是代码:

代码语言:javascript
复制
       for (int j=0; 0<=5; j++) {
            same = false;
            for (int k=0; k<=5; k++) {
                if (strFactor.length() == 6 && strProduct.length() == 6) {
                    if (strFactor.charAt(j) == strProduct.charAt(k)) {
                        same = true;
                    }
                }
            }
            if (!same) {
                return false;
            }
        }

有人知道为什么指数会超出范围吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-12-08 08:30:16

我不是Java程序员,但0<=5将始终对true进行评估,因此j会到达6 (如果不是因为这个例外,j就会继续运行)。

票数 1
EN

Stack Overflow用户

发布于 2011-12-08 08:31:17

for (int j=0; 0<=5; j++) {应该是for (int j=0; j<=5; j++) {

票数 1
EN

Stack Overflow用户

发布于 2011-12-08 08:31:36

请看您的forloop的第一行。字符串超出界限了。

代码语言:javascript
复制
for (int j=0; 0<=5; j++) {

纠正条件。当你编码的时候要小心!快乐编码

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8428132

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档