-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