gpt4 book ai didi

Java 如何将字符串数组中的所有字符合并到一个新字符串中?

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:45:34 25 4
gpt4 key购买 nike

我在做一个方法

public static String merge(String... s)

这是输入:

String a = merge("AM ","L","GEDS","ORATKRR","","R TRTE","IO","TGAUU");
System.out.println(a);

预期输出:

ALGORITMER OG DATASTRUKTURER

我尝试多次运行循环,以便它获取 s[0].charAt(index) 并将其附加到字符串以供输出。我遇到的问题是,当我尝试为 s[1].charAt(1) 运行循环时它为 null,我希望它不获取 StringIndexOutOfBoundsException,而是继续到 s[2] 并附加 s[2]。 char 到字符串。

我该怎么做?

最佳答案

在尝试访问它的第 i 个字符之前,您需要检查每个字符串的长度:

StringBuilder sb = new StringBuilder();
int index = 0;
boolean maxLengthReached = false;
while (!maxLengthReached) {
maxLengthReached = true;
for (String str : input) {
if (index < str.length) {
sb.append(str.charAt(index));
maxLengthReached = false;
}
}
index++;
}

return sb.toString();

澄清一下,我使用 boolean 值 maxLengthReached 来确定最长 String 的最后一个字符何时附加到输出。如果在对输入数组中的所有 String 进行完整迭代时,我们找不到任何足够长的 String 来拥有 charAt(index) ,我们知道我们完成了。

关于Java 如何将字符串数组中的所有字符合并到一个新字符串中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25751909/

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