gpt4 book ai didi

java - 如何交换字符串中的字符

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

我编写了这段代码来交换单词中的字符但由于某种原因它没有交换第一个角色,任何帮助将不胜感激。

public class StringWorker{
public static void main (String[]arg$){

Scanner in = new Scanner(System.in);
System.out.println("enter a word: ");
String str = in.nextLine();

char[] newCh = str.toLowerCase().toCharArray();
int length= str.length()-1;
char temp;

for (int i=0; i<length; i++){

temp = newCh[i];
newCh[i] = newCh[i++];
newCh[i++] = temp;


}
String revamped = String.valueOf(newCh);
System.out.println(revamped);
System.exit(0);
}
}

最佳答案

更改:

for (int i=0; i<length; i++){                   
temp = newCh[i];
newCh[i] = newCh[i++];
newCh[i++] = temp;

至:

for (int i=0; i<length - 1; i++){   
temp = newCh[i];
newCh[i] = newCh[i+1];
newCh[i+1] = temp;
}

i++ 正在递增 i(如 i = i + 1),因此当您完成循环的第一次迭代时, i 已经是 2。

附加:这是我首先想到的,但我很好奇你对“交换”的定义。这个小修复只会导致第一个字符一直移动到末尾,例如“swap”将变成“waps”。

关于java - 如何交换字符串中的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27567919/

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