2017-04-07 65 views
0

我有一串說法,長度是5000.我想知道使用字母'R'(區分大小寫)的次數。以下是兩種可通過的解決方案...找到一個字符串中的字符在java中重複多少次

  1. 轉換爲char數組,循環它以執行條件來檢查和增加計數器。
  2. 使用帶字符'R'的Substring()來獲取可以讀取數組的數組。因此,陣列+1的總長度會的次數,字符串中的「R」字(這是不是一個更好的解決方案)

幫助我卡上的有效的解決方案爲這個。謝謝。

+0

有什麼問題的第一個解決方案? – Kayaman

+0

循環String,然後使用String類的setCharAt(i)方法測試它是否爲'R' – abcOfJavaAndCPP

+0

http://stackoverflow.com/questions/275944/java-how-do-i-count-the-number-鏈接中的字符串 - 鏈接應該提供很多方法 – Nandula

回答

0
String str = //the actual string 
for(int i=0;i<str.length();++i) 
{ 
    if(str.charAt(i)=='R') 
    { 
     capitalRCount++; 
    } 
} 
+0

這是傳統的方式來檢查......任何其他時尚的方式與最小的處理時間? –

+0

@VijayLMarcelin以及我準備的邏輯,因爲它可以鍛鍊你的思維,當你知道邏輯時,你可以用你的邏輯來做,而不是使用許多類來適應。 – abcOfJavaAndCPP

+0

邏輯永遠是受歡迎的...是否有任何特定於解決的API它進一步加快了處理時間。 –

2

如果您使用的是Java> = 8,你可以使用流:

public static void main(String args[]) { 
    String str= "abcderfgtretRetRotpabcderfgtretRetRotp" 
    System.out.println(str.chars().filter(c -> c == 'R').count()); 
} 
+0

太好了。謝謝!需要調查內部邏輯。 –

2

試試這個

String text = "ABCabcRRRRRrrr"; 
int count = text.length() - text.replace("R", "").length(); 
+0

謝謝@Pardeep。 –

相關問題