Br*_*ian 4 java arrays hashmap linkedhashmap bluej
我有一个LinkedHashMap包含一个对象at key和一个at value.
我用过了代码
yourShots.keySet().toArray()[yourShots.size()-1]
Run Code Online (Sandbox Code Playgroud)
返回的最后一个对象keys.但是,我无法访问该对象具有的方法.
我已经使用该getClass()方法确定我确实拥有正确类型的对象,但无法调用该方法.我只是得到了无法找到该方法的错误.
难道我做错了什么?
toArray给你通用Object类型.key在使用它之前,你必须把它投射到你的班级.
KeyClass key = (KeyClass) yourShots.keySet().toArray()[yourShots.size()-1];
// Here you can access your desired method
Run Code Online (Sandbox Code Playgroud)
编辑:
正如@rgettman建议的那样,您可以使用重载版本toArray(T[])来避免强制转换.在这种情况下,您应该提供一个keySet()预先确定大小的初始化数组.
| 归档时间: |
|
| 查看次数: |
157 次 |
| 最近记录: |