2 回答

TA贡献1966条经验 获得超4个赞
Java 的Strings 是不可变的,这意味着您无法更改它们。相反,正如@AshishSingh 在评论中指出的那样,您需要创建一个新的String.
只需这样做:
fruits[0] = manipulate(fruits[0]);
在这里,manipulate()是您的函数,它接受一个输入字符串,根据需要对其进行操作,然后return是被操作的string.
public String manipulate(String oldStr) {
StringBuilder newStr = new StringBuilder(oldStr);
newStr.setChar(1, 'b')
return newStr.toString();
}
我使用的StringBuilder是可变对象,因此可以重新分配元素。我将第二个字符设置为 'b',然后return是新的String.

TA贡献1847条经验 获得超11个赞
JavaString对象是不可变的,因此您无法修改其内部值。
char charArray[] = fruits[index].toCharArray();
charArray[2] = 'b';
修改字符数组中的元素后,将其放回fruits数组中。
fruits[index] = String.valueOf(charArray);
现有的fruits[index]将被新的String.
添加回答
举报