gpt4 book ai didi

java - 删除字符串中的重复字符

转载 作者:行者123 更新时间:2023-12-02 07:50:08 24 4
gpt4 key购买 nike

我正在尝试从字符串中删除重复的字符。例如,如果我输入字符串abaqueru,它应该给我bqer,并删除重复字符au。然而,结果却是不必要的循环。这是代码:

public class question {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
String s = "abaqueru";

calculate(s);
// TODO code application logic here
}

public static void calculate(String s){
String result;

for(int i = 0; i < s.length(); i++)
{
char c = s.charAt(i);
char temp;
temp=c;
for(int j = 1; j < s.length(); j++)
{

char x = s.charAt(j);
if(temp==x){
s=s.replaceAll(""+temp,"");
calculate(s);
}



}

System.out.println(s);
}

}

最佳答案

String 在 java 中是不可变的。 Replaceall后,需要重新赋值

s=s.replaceAll(""+temp,"");

如果您没有将其分配回来,则循环将永远持续下去。

这解决了 stackoverflow 错误,我没有专注于你的实际逻辑:)

关于java - 删除字符串中的重复字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31990303/

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