ArrayList中取出的object对象如何获得其中的值

ArrayList中取出的object对象如何获得其中的值,第1张

很明显取出来的是一个List,

可能你是直接将这个List强转换成POJO,那么当然不行了,

你可以这么做。

if(tempList != null  ){
    for(int i = 0;i<tempListsize();i++){
        Pojo pj = (Pojo) tempListget(i);
        //pjgetXxx();
    }
}

首先,你的deviceName和isOn应该是定义在另一个类型里,而这个类型继承自Object。在非组件环境下,你可以试试找到这个类型,然后将obj强制转换成这个类型就可以通过相应的方法访问。
或者:这个类型实现了某个接口,须通过接口方法访问属性,那你就要找到这个接口,用同样的方式转换后访问。

反射机制。
把a换成你的Object对象就行了
import javalangreflectField;
public class Test {
public static void main(String[] args) throws Exception {
A a = new A();
aname = "test";
aage = 20;
Field[] fields = agetClass()getFields();
for (int i = 0; i < fieldslength; i++) {
Field field = fields[i];
fieldsetAccessible(true);//忽略访问权限,私有的也可以访问
Systemoutprintln(fieldgetName() + " = " + fieldget(a));
}
}
}
class A {
public String name = "";
public int age = 0;
}

你把object转为对应的数组就行了
var arrayUint = dwrods as uint[];
if (arrayUint != null)
var uint20 = arrayUint[20];
不过一般大可不必这样做,方法一般不会直接返回object的,你看一下100行方法的返回类型是什么,然后就把object变成什么(它应该是一个数组,这样就不用做类型转换了),一般也可以直接把dwrods声明成var

var t = typeof(对象);
var list = tGetProperties(); //反射取所有的属性
foreach() //遍历


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13355553.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-20
下一篇 2023-07-20

发表评论

登录后才能评论

评论列表(0条)

保存