Java程式查詢給定字串中字元的頻率
對於給定的字串,編寫一個Java程式來查詢特定字元的頻率。在Java中,字串是一種資料型別,包含一個或多個字元,並用雙引號 (“ ”) 括起來。
查詢字串中字元的頻率
要查詢給定字串中字元的頻率,請按照以下方法操作:
- 使用for迴圈
- 使用Stream API
使用for迴圈
在這種方法中,使用for迴圈將給定字串中的每個字元與要查詢頻率的字元進行比較。每次匹配時,遞增計數。
示例
在此示例中,我們使用巢狀for迴圈查詢給定字串中字元的頻率。
public class FrequencyOfACharacter { public static void main(String args[]){ String str = "Hi welcome to tutorialspoint"; System.out.println("Given string value:: " + str); char character = 't'; System.out.println("Finding frequency of character:: " + character); int count = 0; for (int i=0; i<str.length(); i++){ if(character == str.charAt(i)){ count++; } } System.out.println("Frequency of the given character:: "+count); } }
執行程式碼後,將顯示以下結果:
Given string value:: Hi welcome to tutorialspoint Finding frequency of character:: t Frequency of the given character:: 4
使用Stream API
這是另一種查詢給定字串中字元頻率的方法。在這裡,我們使用Java流,它用於處理物件集合。在這種方法中,filter()方法將過濾出與給定字元匹配的字元。
示例
以下示例說明了如何使用Stream API查詢給定字串中字元的頻率。
import java.util.stream.IntStream; public class FrequencyOfACharacter { public static void main(String[] args) { String str = "Hi welcome to tutorialspoint"; System.out.println("Given string value:: " + str); char character = 'i'; System.out.println("Finding frequency of character:: " + character); long count = IntStream.range(0, str.length()) .mapToObj(i -> str.charAt(i)) .filter(ch -> ch == character) .count(); System.out.println("The frequency of '" + character + "' is:: " + count); } }
執行此程式碼後,將生成以下輸出:
Given string value:: Hi welcome to tutorialspoint Finding frequency of character:: i The frequency of 'i' is:: 3
廣告