入力はn個の文字列です。私は、ユニークな値だけでなく、これらの文字列の大文字小文字を区別しない出現の数を取得したい。Java文字列最大最小ユニークオカレンス
私は配列で入力を取得する考えがあります。それをソートし、ループを実行して出現を計算します。他の方法はありますか?
入力はn個の文字列です。私は、ユニークな値だけでなく、これらの文字列の大文字小文字を区別しない出現の数を取得したい。Java文字列最大最小ユニークオカレンス
私は配列で入力を取得する考えがあります。それをソートし、ループを実行して出現を計算します。他の方法はありますか?
あなたが望む結果を得るためにストリームAPI機能を使用することができます。
List<String> list = Arrays.asList("hello","world","Hola","Mundo","hello", "world","Hola","Mundo","mundo","Hello","Hola","mundo","Mundo");
Map<String, Long> ocurrences = list
.stream()
.map(String::toLowerCase) // make case insensitive
.collect(Collectors.groupingBy(Function.identity(), Collectors.counting()));
System.out.println(ocurrences);
出力:
{世界= 2、ムンド= 5、こんにちは= 3、はいはい= 3}
これは、キーがユニークな単語であり、各値が出現した回数を示すマップを返します。
'整数整数= map.getOrDefault(stringAsLowerCase、0);'を使うと、条件付き論理を取り除くことができます – Michael
入力( n文字列の数)はどのように見えますか?それは配列、リストまたは地図ですか?それとも何か? – deHaar
文字列を出現数にマップします。 – Patrick
それは文字列の配列 – Emmanual