gpt4 book ai didi

Java:为什么我不断收到此方法的 StringIndexOutOfBoundsException?

转载 作者:行者123 更新时间:2023-12-02 05:10:13 26 4
gpt4 key购买 nike

我编写了一个静态方法,旨在获取字符串并将其打乱。

当您输入给定的字符串,例如“四分七”时,您应该得到输出

“f rneosedvuc eroasn”,因为字符串被打乱到下面的网格中。

row 1:       f   r n e

row 2: o s e d v

row 3: u c e

row 4: r o a s n

当我运行此方法时,我不断在使用 s.charAt(i) 的行处收到 StringIndexOutOfBoundsException。我不知道这是为什么。无论我对 for 循环测试做了多少更改(这显然是问题所在),我仍然收到此错误。

代码:

public class Test {
public static void main(String[] args){
System.out.println(encode("four score and seven", 4));
}
public static String encode(String s, int n){
String finalOutput = "";
for (int i = 0; i < n; i++){
String output = "";
for(int j = 0; j < s.length() - 1; i += n){
System.out.println(s.charAt(i) + " " + i);
output += s.charAt(i);
}
finalOutput += output;
}
return finalOutput;
}
}

最佳答案

条件必须是这样的:

for(int j = 0; j < (s.length()-1) && i<s.length(); j++, i+=n)

你还没有增量 j++,但你的循环将会无穷大。

关于Java:为什么我不断收到此方法的 StringIndexOutOfBoundsException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27393142/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com