为了账号安全,请及时绑定邮箱和手机立即绑定

如何访问 Java 中 Arraylist 中 Object[] 中的值

如何访问 Java 中 Arraylist 中 Object[] 中的值

largeQ 2023-03-31 16:43:58
我有一个包含 Object[] 的列表,我想访问其中一个 Objects[] 的值。这是我的代码的样子:private List<Object> trackList;trackList = new ArrayList<>();Integer random = (int)(Math.random() * ((100 - 0) + 1)) + 0;Integer random2 = (int)(Math.random() * ((100 - 0) + 1)) + 0;Object[] currTrack = new Object[]{random1, random2};trackList.add(currTrack);Integer value1 = trackList.get(0)[1];获取:“预期的数组类型;找到:'java.lang.object'我想我错过了一些非常简单的东西。帮助会很好,谢谢。
查看完整描述

2 回答

?
守候你守候我

TA贡献1802条经验 获得超10个赞

你这样声明你的列表:

List<Object> trackList;

所以当你这样做时:

trackList.get(0)

那会让你 anObject而不是Object[].

你需要施放它:

((Object[])trackList.get(0))[1]

但是你有另一个问题,因为上面的表达式返回给你 anObject而你想将它分配给 an Integer

所以你需要另一个演员......完整的行应该是:

Integer value1 = (Integer)((Object[])trackList.get(0))[1];

顺便说一句,只声明列表以包含您实际要放入其中的内容会更容易。


查看完整回答
反对 回复 2023-03-31
?
慕森王

TA贡献1777条经验 获得超3个赞

在您的列表声明中,您设置该列表包含对象而不是对象[]:

List<Object> trackList;

所以当你这样做时:

trackList.get(0) 这让你得到一个 Object 而不是 Object[]

您需要将 List 初始化更改为

List<Object[]> trackList;


查看完整回答
反对 回复 2023-03-31
  • 2 回答
  • 0 关注
  • 142 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信