gpt4 book ai didi

java - 反转字符串数组中的字符

转载 作者:行者123 更新时间:2023-12-01 17:18:16 28 4
gpt4 key购买 nike

我正在处理其他一些方法,但我不知道如何处理这个方法。我想更改数组内字符串的顺序(不是字符串*s*的顺序),但这不被接受。有什么想法吗?

public void invert() {

for(int i = 0; i < array.length; i++){
for(int j = 0, k = array[i].length() - 1; j < k; j++, k--){
char a = array[i].charAt(j);
array[i].charAt(j) = array[k].charAt(k); //ERROR HERE
array[i].charAt(k) = a; //AND HERE
}
}
}

编辑:我将在这里留下我的意思。我有一个数组 = {"Hello", "Goodbye"}我想将其更改为 {"olleH", "eybdooG"}

最佳答案

Java 字符串是不可变的。您无法更改它们。

(但是您可以将字符串转换为 StringBuilder - http://docs.oracle.com/javase/tutorial/java/data/buffers.html - 这本质上是一个可变字符串,更改字符,然后将 StrignBuilder 转换回 String。)

尝试这个代码(我还没有测试过,但我希望它有效):

    for(int i = 0; i < array.length; i++) {
StringBuilder b = new StringBuilder(array[i]);
for(int j = 0, k = b.length() - 1; j < k; j++, k--){
char a = b.charAt(j);
b.setCharAt(j, array[k].charAt(k));
b.setCharAt(k, a);
}
array[i] = b.toString();
}

关于java - 反转字符串数组中的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20526384/

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