Android ListView使用不同对象加载不同布局

因为未知原因,突然想到了关于一个 List 集合里面能否添加不同对象的问题,因为我们平时开发过程中,关于List 的比较常规的写法就是:

List<XXX> list = new ArrayList<XXX>();

这让我形成了一种 List 里面就只能添加一种类型的对象的潜在想法(或许是 Java 基础不够扎实)。
所以,我这里用代码确定一下,List 不给定泛型,然后迭代添加两种不同的对象,最后再迭代输出数据,看看是否会有问题,代码如下:

public class MainClass {

    private List list = new ArrayList();

    public static void main(String args[]) {
        MainClass mc = new MainClass();
        mc.initData();

        for (int i = 0; i < 10; i++) {
            Object item = mc.list.get(i);

            if (item instanceof TestOther) {
                TestOther other = (TestOther) item;
                String company = other.getCompany();
                String position = other.getPosition();
                System.out.println("company : " + company + " , position : " + position);
            } else if (item instanceof TestBean1) {
                String name = ((TestBean1) item).getName();
                String like = ((TestBean1) item).getLike();
                System.out.println("name : " + name + " , like : " + like);
            }
        }
    }

    private void initData() {
        for (int i = 0; i < 10; i++) {
            if (i % 2 == 0) {
                list.add(new TestOther("Ekoo" + i, "Android Developer" + i));
            } else {
                list.add(
  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值