2012-01-28 205 views
0

我有一個問題,我需要輸出一個用戶輸入的字符串是否在字符串中的後綴和前綴位置有重複的字符集,如果有,我必須打印出 「ok」。字符串操作?

,如果用戶輸入「ermarf」它會打印出「不正常」

我的問題是我怎麼代碼這一點。我認爲使用CharSequence()方法會起作用;但有了這個,你必須指出要尋找什麼特定的字符,而這不會爲我想要做的工作;有什麼建議麼?

+0

請提供包含或不包含您希望檢測到的重複字符集的字符串示例。 – 2012-01-28 05:37:27

+0

哦,我忘了提及它的字符串前綴和後綴,所以基本上,用戶輸入「rerfgrer」程序會打印出「ok」,因爲字符串「rerfrer」具有相同的前綴字符和字符串的後綴。如果用戶輸入「ermare」,則會打印出「不好」,因爲字符串的前綴和後綴不匹配 – Enigma 2012-01-28 05:55:44

+0

如何確定前綴和後綴?因爲如果'e'是一個有效的前綴/後綴,那麼你的反例是有缺陷的。 – 2012-01-28 06:02:00

回答

0

可以使用CharacterSet秒。

例如

String input = "abcde"; 
Set<Character> set = new HashSet<Character>(); 
boolean hasDup = false; 
for(int i=0; i<input.length(); i++) { 
    if(!set.add(input.charAt(i))) { 
     hasDup = true; 
     break; 
    } 
} 
+0

你能解釋一下這段代碼的作用嗎?我是新人,並且真的試圖瞭解它究竟做了什麼。 – Enigma 2012-01-28 05:55:00

+0

它檢查輸入的字符串是否有重複的字符。但是您的要求似乎與您的OP完全不同。你需要用更多的例子來更新它。因爲我閱讀了你的評論,但它仍然不清楚你真正想要達到的目標。 – 2012-01-28 05:58:10

+0

我已經更新了OP,希望能夠更好地描述我正在努力完成的任務,請看看! – Enigma 2012-01-28 06:05:36

0

使用設置字符串,並填寫讀取主串的下一個字符。然後檢查集合的大小。

+0

噢,我忘記提及它匹配字符串的前綴和後綴,所以基本上,用戶輸入「rerfgrer」程序會打印出「ok」,因爲字符串「rerfrer」具有相同的前綴字符和字符串的後綴。如果用戶輸入「ermare」,則會打印出「不好」,因爲字符串的前綴和後綴不匹配 – Enigma 2012-01-28 05:52:11