首页 > 解决方案 > 给定一个整数数组,返回数组中 9 的个数

问题描述

基本上这个问题的目的是计算在数组中输入数字 9 的次数,例如,arrayCountNines([1, 9, 9, 3, 9]) = 3

我试过做一个数字流,例如使用 .collect ,但这似乎不起作用。也尝试过 HashMaps

    public class NewClass4 {
   public int arrayCountNines(int[] nums) {
      HashMap < Character, Integer > map = new HashMap<>();
      for (int i =0; i<nums.length; i++) {
          char[] charr = String.valueOf(nums[i]).toCharArray(); 
          for(int j = 0; j<charr.length; j++) {
              if(map.containsKey(charr[j])) {
                  map.put(charr[j], map.get(charr[j])+1); 
              }
              else {
                  map.put(charr[j], 1);
              }
          }
      }
      return 1; 

}


    }

] 1

它不返回 9 在数组中的次数

标签: java

解决方案


public int arrayCountNines(int[] nums) {
   return (int) Arrays.stream(nums).filter(value -> value == 9).count();
}

推荐阅读