【问题标题】:Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0 in map [duplicate]线程“主”java.lang.ArrayIndexOutOfBoundsException 中的异常:地图中的 0 [重复]
【发布时间】:2016-01-27 05:34:54
【问题描述】:

我在 Ubuntu 14.04 中使用 NetBeans 和控制台编译的下一个问题:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0

我的代码是(在错误行中):

Object maxFreK = map.keySet().toArray()[0];

我该如何解决?

谢谢!

【问题讨论】:

    标签: java arrays exception main bounds


    【解决方案1】:

    此异常表明您的地图为空,并且您正在访问第一个不存在的键。在从键集中访问任何元素之前,请检查数组/键集是否包含元素

    例如

    Object [] objArr = map.keySet().toArray();
    if(objArr.length>0){
       Object maxFreK = objArr [0];
    }
    

    【讨论】:

      【解决方案2】:

      java.lang.ArrayIndexOutOfBoundsException : 0 表示您的数组不包含任何元素。
      它是一个空数组。

      你可以使用这样的东西:

      Object maxFreK=null; 
      if (!map.isEmpty()){
        maxFreK = map.keySet().toArray()[0];
      }
      

      【讨论】:

      • 是的,这是问题所在,现在我尝试找到如何将元素放入其中。谢谢!
      猜你喜欢
      • 1970-01-01
      • 2011-09-09
      • 2013-12-18
      • 2018-03-05
      • 2015-06-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多