Java 尝试使用Hashmap

Java 尝试使用Hashmap,java,hashmap,Java,Hashmap,在这种情况下,每次使用当前设置的方式运行for循环时,如何将键[I]增加1所有元素只映射到1。我试图找出每个数字出现的次数。我在list.geti之后的空白位置尝试了+1,但还是只将每个元素映射为1。多谢各位 List<Integer> list = new ArrayList<Integer>(); HashMap<Integer,Integer> Mode = new HashMap<Integer, Integer>();

在这种情况下,每次使用当前设置的方式运行for循环时,如何将键[I]增加1所有元素只映射到1。我试图找出每个数字出现的次数。我在list.geti之后的空白位置尝试了+1,但还是只将每个元素映射为1。多谢各位

    List<Integer> list = new ArrayList<Integer>();
    HashMap<Integer,Integer> Mode = new HashMap<Integer, Integer>();
    for (int i = 0; i < arr.length; i++) {
        for (int j = 0; j < arr[i].length; j++) {
            list.add(arr[i][j]); 
        }
    }
    System.out.println(list);
    int count = 1;
    for(int i = 0; i < list.size(); i ++) {
        Mode.put(list.get(i), );
您需要在此处指定一个键

您需要在此处指定一个键


根据你的评论,

for(int i = 0; i < list.size(); i ++) {
   if(Mode.containsKey(list.get(i)) ){
       Integer count = Mode.get(list.get(i));

       Mode.put(list.get(i), ++count);}
   else
       Mode.put(list.get(i), 1);

根据你的评论,

for(int i = 0; i < list.size(); i ++) {
   if(Mode.containsKey(list.get(i)) ){
       Integer count = Mode.get(list.get(i));

       Mode.put(list.get(i), ++count);}
   else
       Mode.put(list.get(i), 1);

如果您有选择权,您可能会发现更容易使用类似from的内容


如果您有选择权,您可能会发现更容易使用类似from的内容


int count=1可以忽略!!你的问题不太容易理解,但评论很好哈哈,很抱歉,从上午10点开始,MT时间刚刚结束,一直在做这些作业。谢谢你的帮助,我真的很感激。t count=1可以忽略!!你的问题不是很容易理解,但评论是好的。哈哈,很抱歉,从MT时间上午10点开始,我就一直在做这些作业。谢谢你的帮助,我真的很感激it@AVD钱是对的。或者你的问题不清楚。据我所知,您希望计算数组中某个值出现的次数。因此,使用该值作为贴图的键,然后使用发生次数作为贴图值。这正是所建议的。如果这是不正确的,请澄清您的问题,并解释为什么提供的解决方案是无效的。@AVD是正确的钱。或者你的问题不清楚。据我所知,您希望计算数组中某个值出现的次数。因此,使用该值作为贴图的键,然后使用发生次数作为贴图值。这正是所建议的。如果这是不正确的,请澄清您的问题并解释为什么提供的解决方案无效。如果您不能使用第三方库-可能是这样,如果这是家庭作业-您应该使用AVD的解决方案。如果您不能使用第三方库-可能是这样,如果这是一个家庭作业-你应该使用AVD的解决方案。
Multiset<Integer> seen = HashMultiset.create();
for (int[] row : arr) {
  for (int elem : row) {
    seen.add(elem); // none of that nasty dealing with the Map
  }
}
// you can look up the count of an element with seen.count(elem)
E mostCommon = null;
int highestCount = 0;
for (Multiset.Entry<Integer> entry : seen.entrySet()) {
  if (entry.getCount() > highestCount) {
    mostCommon = entry.getElement();
    highestCount = entry.getCount();
  }
}
return mostCommon; // this is the most common element