Java
 Computer >> コンピューター >  >> プログラミング >> Java

Javaで文字列の最大出現文字を出力するにはどうすればよいですか?


文字列 クラスは、文字列を表すために使用できます 、Javaプログラムのすべての文字列リテラルは、文字列のインスタンスとして実装されます。 クラス。文字列は定数であり、その値は変更できません(不変) 作成したら。

以下のプログラムでは、最大発生文字を印刷できます。 与えられた文字列の。

public class MaxOccuredCharacterTest {
   public static void main(String[] args) {
      String str1 = maxOccuredChar("tutorialspoint");
      System.out.println(str1);
      String str2 = maxOccuredChar("AABBAABBCCAABBAA");
      System.out.println(str2);
      String str3 = maxOccuredChar("111222333444333222111");
      System.out.println(str3);
   }
   public static String maxOccuredChar(String str) {
      char[] array = str.toCharArray();
      int maxCount = 1;
      char maxChar = array[0];
      for(int i=0, j=0; i < str.length()-1; i=j) {
         int count = 1;
         while(++j < str.length() && array[i] == array[j]) {
            count++;
         }
         if (count > maxCount) {
            maxCount = count;
            maxChar = array[i];
         }
      }
      return (maxChar + " = " + maxCount);
   }
}
出力
t = 1
A = 2
1 = 3

  1. JavaでStringIndexOutOfBoundsException(チェックされていない)を処理する方法は?

    StringIndexOutOfBoundsException 未チェックの1つです 例外 Javaで。文字列は一種の文字の集合です。 文字列 オブジェクト 範囲があります [0、文字列の長さ] 。誰かが実際の文字列値の範囲を超える制限のある文字にアクセスしようとすると、この例外が発生します。 例1 public class StringDemo {    public static void main(String[] args) {       String str = "Welcome to Tutorials Point

  2. JavaでNumberFormatException(チェックされていない)を処理する方法は?

    NumberFormatException 未チェックです 例外 parseXXX()によってスローされます フォーマットできない場合のメソッド (変換)文字列を数値に変換 。 NumberFormatException 多くのメソッド/コンストラクターによってスローされる可能性があります java.langのクラスで パッケージ。以下はその一部です。 public static int parseInt(String s)throws NumberFormatException public static Byte valueOf(String s)throws Numb