3 回答

TA貢獻1868條經(jīng)驗 獲得超4個贊
我更改代碼并添加說明。
boolean behindExist;
for (int i=1; i<str1.length(); i++) {//loop for all character in string
behindExist = false;
for (int j=0; j < i; j++) {
//check same character is exist before now char
//Ex) if (i = 3), check
//str1.charAt(3) == str1.charAt(0);
//str1.charAt(3) == str1.charAt(1);
//str1.charAt(3) == str1.charAt(2);
if (str1.charAt(i)==str1.charAt(j)) {
behindExist = true;
}
}
if (!behindExist) {//if not behindExist
arr1[i]=str1.charAt(i);//add to arr1
System.out.print(arr1[i]+"");//and print character
}
}
而且,這是我的代碼。
Scanner sc = new Scanner(System.in);
System.out.print("input a string : ");
String input = sc.nextLine();
for(int charCode : input.chars().distinct().toArray()) {
System.out.print((char)charCode);
}
System.out.print(" : only made up of these alphabets");
sc.close();
短的。我喜歡它。我希望這能有所幫助。:)

TA貢獻1831條經(jīng)驗 獲得超9個贊
我們可以使用像這樣簡單的東西嗎?該集合將包含構(gòu)成單詞的唯一字符。
char[] charArr = str1.toCharArray();
Set<Character> charSet = new HashSet();
for(char c: charArr){
charSet.add(c);
}

TA貢獻1813條經(jīng)驗 獲得超2個贊
為什么要把問題復雜化。
嘗試在 java 中使用集合的功能。
是這樣的:-
Set<Character> set = new HashSet(Arrays.asList(str1.toCharArray()));
添加回答
舉報