-1
import java.util.Scanner;
public class StringWithoutDuplicate {
public static void stringWithoutDuplicate(String s1)
{
int n = s1.length();
int i = 0;
while(i<n)
{
if(s1.charAt(i) == s1.charAt(i+1))
{
if(s1.charAt(i) == s1.charAt(n-1))
{
System.out.println(s1.charAt(i));
}
i++;
}
else if(s1.charAt(i) != s1.charAt(i+1))
{
if(s1.charAt(i) == s1.charAt(n-1))
{
System.out.println(s1.charAt(i));
}
System.out.println(s1.charAt(i));;
i++;
}
}
}
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
s.useDelimiter(",");
String s1 = s.next();
System.out.println(s1);
stringWithoutDuplicate(s1);
}
}
该代码给出了输出,但有一个例外 请告诉我在我的代码中的错误以及纠正它的方法。 我不想改变我的代码的逻辑,所以只用这个逻辑来解决它。删除字符串中的重复字符
你有什么异常? –
你得到的错误是因为s1.charAt(i + 1)。在某些时候,i + 1会超过s1的长度。 – Shar1er80