问题标签 [stringindexoutofbounds]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
28 浏览

java - 运行时错误_字符串索引超出范围异常_打印字符串奇偶索引

代码 :

导入 java.io。; 导入 java.util。;

公共类解决方案{

}

问题:运行代码时出现运行时异常。--> 字符串索引越界异常

0 投票
2 回答
173 浏览

java - 在JAVA中将字符串作为输入的问题

我正在尝试创建一个程序,用于将广告 IP 地址作为输入并将 Class、netID 和 hostID 作为输出。我在将 IP 地址作为程序中的字符串输入时遇到问题。

这是我得到的错误的快照

错误:

下面给出的是我遇到错误的代码部分:

按照完整的代码

0 投票
1 回答
37 浏览

java - 计算词频

嘿伙计们,我正在尝试计算给定输入中的词频,它有很多行。我将它存储在 ArrayList 中并将其作为参数。首先,我尝试先按 aphabetically 对它们进行排序

现在,我正在尝试删除单词 can't 中的字符 '。但它似乎没有用。所以我尝试使用替换方法,但是当我用 '\0' 替换它时它会留下空白

希望我得到了一些解决方案。提前致谢。

0 投票
2 回答
51 浏览

java - 为什么以下异常专门显示 -4 索引而不是 -1?

我正在尝试从字符串中获取子字符串。我已经编写了逻辑来提供开始索引和结束索引,但低于异常。代码是:

例外:

'字符串索引超出范围:-4' java.lang.StringIndexOutOfBoundsException:字符串索引超出范围:-4 在 java.lang.String.substring(String.java:1967)

任何帮助,将不胜感激。

0 投票
0 回答
37 浏览

python - 我在这个 mastermind python 上的逻辑在纸上有效,但是当我在 python 中使用它时,它给了我两个不同的错误,一个逻辑和另一个字符串索引

对于一个学校项目,我正在用python创建游戏大师头脑,如果你不知道大师头脑是如何工作的,它的基本要点是通过已知的相同颜色的正确位置和相同颜色的错误位置来破解代码。

无论如何,我的代码中的主要问题是为每个线索计算线索答案的不正确位置的逻辑。我的解决方案是:假设答案是 1234,线索是 1223 我需要找到正确的位置和不正确的位置以添加到侧面。首先,我会创建一个 2 个变量,即行和答案代码,这在我之前的代码中是这样做的。我将线的字符串索引测量到答案的屏幕索引,如果这是真的,那么我将 1 加到红心上,然后继续下一个字符串索引。如果它不在正确的位置,那么我使用以下代码:

心脏只是更换正确的位置。无论如何,如果编辑的答案(删除了两者的正确位置)是== 0,或者如果编辑的行== 0,那么它会跳过所有这些。但如果他们不是,它立即进入数学,在这种情况下,它需要给定数字的数量,或者在这种情况下,在编辑的答案和编辑的行中,将它们加起来,然后将它们除以二得到该线索的不正确位置的数量,如果它以浮点数形式出现,则将其四舍五入,假设我们在编辑的答案中有 3 个,在编辑的行中有 2 个,它得到 5,除以 2,得到 2.5 和减去 0.5 得到错误位置的数量。

我知道有多种方法可以解决或优化它,但我只想让我当前的方法正常工作,我的整个班级都找不到我的问题的解决方案,我是班上唯一尝试任何东西的人我自己的时间。

完整代码如下:

我知道放屁是使用游戏类型的一个不成熟的变量名,但命名这样的东西让我保持理智

0 投票
1 回答
49 浏览

java - Java-字符数组接受整个字符串,即使声明的大小较小

我一直在尝试理解 Java 中的字符串处理技术,而我发现我的代码正在接受初始化为字符串对象的整个字符串为一个比该字符串对象中的字符数更小的字符数组。我的示例代码:

虽然我已将ch大小初始化为 0,但整个字符串 ins正在输出中打印。它不应该给我一个错误,说明初始化的数组小于字符串中字符的长度s吗?如果我的理解有误,有人可以帮助我吗?

0 投票
1 回答
359 浏览

python - 比较python中字符串的第一个和最后一个字符

如果字符串的第一个字母与字符串的最后一个字母相同,first_and_last 函数返回 True,如果它们不同,则返回 False,通过使用 message[0] 或 message[-1] 访问字符。在检查空字符串的条件时,我得到了 tihis 错误:

我不明白为什么会出现此错误。下面是我的代码:

0 投票
1 回答
28 浏览

java - Java中的多个字符

我不知道,我哪里出错了。我得到“字符串索引超出范围:4”作为错误。

输入:a1b4c3

输出:abbbbccc

0 投票
0 回答
109 浏览

swift - 致命错误:字符串索引越界 Swift

我正在尝试获取在 UITextView 中键入的文本的子字符串。这是我的代码:

当我尝试在 textView 的末尾添加字符时,它会崩溃。但是,如果我尝试在 textView 的开头或中间添加文本,它会起作用。如何修复此崩溃:线程 1:致命错误:字符串索引超出范围

0 投票
0 回答
24 浏览

java - java从右到左求值器变成从左到右求值器,StringIndexOutOfBoundsException java

我有一个任务,我需要将一个从右到左的求值程序转换为一个从左到右的求值程序(也让它要求你用 Y/N 提示来评估多个表达式)。我需要对程序进行一些更改,例如

  1. 允许数字和运算符之间有空格
  2. 负数应该有一个减号,后面紧跟一个数字或小数点;此外,负数通常应该用括号括起来。(这与使用下划线表示否定的旧程序不同)
  3. 应该允许取幂,具有最高优先级。
  4. 评价应该从左到右。这是主要变化。A) 必须重写 formNum() 方法,以便在遇到数字的最左边数字或前导小数点时从左到右扫描。当然,由于您是从左到右扫描,因此必须调整从连续数字构建双精度值的方法 - 尝试一些示例以发现正确的方法。B) evaluator() 方法也必须调整为从左到右扫描。有几个变化: i) 当遇到左括号时,它总是被压入堆栈 A,除非它发出负数信号(如 5+ (-13.4) +2)。在这种情况下,应该调用 formNum() 来计算负数并将其作为双精度数推送到 B 上,并且应该跳过相应的右括号。ii) 当遇到右括号(但不是负数的右端)时,它会触发对 evalDown() 的调用,以评估带括号的子表达式中的操作,直到到达相应的左括号。左括号也从 A 中弹出。 iii) 当当前令牌运算符的优先级等于堆栈顶部的运算符时,不要压入令牌。相反,使用 eval() 在 A 堆栈顶部执行操作,然后将当前令牌运算符与 A 堆栈的新顶部进行比较。例子。假设我们有 3.0 / 2.0 * 4.0 。我们将 3 推到 B 上,将 / 推到 A 上,然后将 2 推到 B 上。如果我们(错误地)将 * 推到 A 上(它与 / 具有相同的优先级),然后将 4 推到 B 上,我们将先计算 2 * 4,然后再计算 3/ 8.. 相反,我们应该先计算 3./2 并推入 1.5,然后再计算 1.5 * 4 = 6.0。

考虑到这一点,这里是旧程序文件//我已将旧程序文件放在 pastebin 链接中,以使可读性更容易一些。

表达式评估器.java https://pastebin.com/QkKdU6dh

ExprEvaluatorTest.java https://pastebin.com/3UqqLsvr

Stack1gen.java https://pastebin.com/KW4Pz9Pt

这是我对新程序的尝试。

LR.java

LRTest.java

和 Stack1gen.java // 编辑:不小心为这个类输入了错误的代码

当我运行 LRtest.java 并输入 y 时,我得到一个 StringIndexOutOfBoundsException ,它指向 evaluator() 的开头。我不知道出了什么问题。如果有人可以帮助我,将不胜感激。