基本上这个问题的目的是计算数字 9 在数组中输入的次数,例如 arrayCountNines([1, 9, 9, 3, 9]) = 3我尝试过进行数字流,例如使用 .collect 但似乎不起作用。还尝试过 HashMap 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 在数组中出现的次数
4 回答
ibeautiful
TA贡献1993条经验 获得超5个赞
尝试一下:
public int arrayCountNines(int[] nums) {
int count=0;
for (int i =0; i<nums.length; i++) {
int v = nums[i];
if (v==9) {
count++;
}
}
return count;
}
慕的地8271018
TA贡献1796条经验 获得超4个赞
public int arrayCountNines(int[] nums) { return (int) Arrays.stream(nums).filter(value -> value == 9).count(); }
慕桂英4014372
TA贡献1871条经验 获得超13个赞
尝试这个简单的方法:
public int arrayCountNines(int[] nums) {
int result = 0;
for(int i = 0; i < nums.length; i++){
if(nums[i] == 9){
result++;
}
}
return result;
}
POPMUISE
TA贡献1765条经验 获得超5个赞
难道不能使用 for 循环遍历数组,然后在该项等于 9 时将其添加到计数器中吗?
...
int nineCounter = 0;
for(int i=0; i<array.length ; i++){
if(array[i] == 9){
nineCounter++;
}
}
return nineCounter;
添加回答
举报
0/150
提交
取消