如果将数字读取为字符串,如何计算字符串中重复的最高数字的次数?\ a.例如:2 4 3 4 2 4 0 -> (3)

java 8object oriented programmingprogramming

为此,

  • 修剪给定的字符串并使用split()方法将其拆分(删除中间的空格)。
  • 创建一个整数数组,并在循环中使用方法将字符串数组的每个元素转换为整数,并将其赋值给整数数组的相应元素。
  • 对获得的整数数组进行排序,由于此方法按升序对数组元素进行排序,因此最后一个元素将是数组中的最大值。
  • 创建一个初始值为0的整数变量count。
  • 将数组的每个元素与最大值进行比较,每次匹配时,递增计数。
  • 计数的最终值将是所需的结果。

示例

import java.util.Arrays;

public class CountingHighestNumber {
   public static void main(String args[]) {
      int count = 0;
      String str = "2 3 4 3 8 8 3 5 2 6 8";
      String[] strArray = str.trim().split(" ");
      int size = strArray.length;
      int[] intArray = new int[size];
     
      for(int i = 0; i<size; i++) {
         intArray[i] = Integer.parseInt(strArray[i]);
      }
      System.out.println("整数数组 ::"+Arrays.toString(intArray));
      Arrays.sort(intArray);
      System.out.println("已排序数组 ::"+Arrays.toString(intArray));
      int max = intArray[size-1];
      System.out.println("最大值为 :"+max);
     
      for(int i = 0; i<size; i++) {
          if(intArray[i]==max) {
            count++;
         }
      }
      System.out.println("最大值重复的次数是 ::"+count);
   }
}

输出

整数数组 ::[2, 3, 4, 3, 8, 8, 3, 5, 2, 6, 8]
排序数组 ::[2, 2, 3, 3, 3, 4, 5, 6, 8, 8, 8]
最大值为 :8
最大值重复的次数为 ::3

相关文章