【问题标题】:MalformedParameterizedTypeException when use ArrayList<ArrayList<>>使用 ArrayList<ArrayList<>> 时出现 MalformedParameterizedTypeException
【发布时间】:2017-01-13 00:21:04
【问题描述】:

这是我的代码:

class TestDraft {
    ArrayList<ArrayList<String, Double>> a = []

    static void main(String[] args) {
        new TestDraft().a.add(["pr", 2])
    }
}

它提高:

“java.lang.reflect.MalformedParameterizedTypeException”

当我将 ArrayList&lt;ArrayList&lt;String, Double&gt;&gt; 更改为 ArrayList 时,它可以工作,但我希望是什么原因:

MalformedParameterizedTypeException

【问题讨论】:

  • 你认为ArrayList&lt;Integer, Integer, Integer&gt;是什么意思?
  • java 还是groovy

标签: groovy


【解决方案1】:
ArrayList<ArrayList<Integer, Integer, Integer>>

没有任何意义(我认为这是错误告诉你的)

应该是:

ArrayList<ArrayList<Integer>>

要说你有一个整数列表...泛型并不表示列表中有多少元素

【讨论】:

  • 我更新了我的问题,当我使用ArrayList&lt;ArrayList&lt;String, Double&gt;&gt; 时,它会引发同样的错误,为什么?
  • 也许我知道,ArrayList 没有语法ArrayList&lt;String, Double&gt;,它只有ArrayList&lt;Type&gt;,对吧?
  • 是的,就是这样:-)
猜你喜欢
  • 1970-01-01
  • 2023-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多