需求:对一字符串abcd
,要求交换位置0
和位置2
的两个字符,交换结果为cbad
。
java高效实现方案,先将String转换为char数组,数组可以修改任意位置的值,进行常规的数组交换即可
public static void main(String[] args) {
String str = "abcd";
int i = 0, j = 2;
char[] strArray = str.toCharArray(); // 转换成数组
char temp = strArray[i];
strArray[i] = strArray[j];
strArray[j] = temp;
str = String.valueOf(strArray);
System.out.println(str);
}