0

我在我的应用程序中使用 Setter getter 方法。我的包含 setter&getter 的课程是:

public class Product {

    private  ArrayList<Integer> id=new ArrayList<Integer>();

    public ArrayList<Integer> getId() {
        return id;
    }

    public void setId(ArrayList<Integer> id) {
        this.id = id;
    }
}

public class Check extends Activity {

    ArrayList<Integer> passedid=new ArrayList<Integer>();

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_checkout_page);

        Intent checkoutintent=getIntent();
        Intent shopcart=getIntent();

        Product prodobj=new Product();
        passedid=prodobj.getId();   

        new LongRunningGetIO().execute();   
    }
}

当我想对产品类的对象使用 getId() 方法时,它每次都返回空值。有什么方法可以返回存储在 setId() 方法中的 id 值。在此先感谢。

4

1 回答 1

1

有什么方法可以返回存储在 setId() 方法中的 id 值。

我对你的方法有点困惑。您想从您的列表中获取特定的 id,但您要返回整个列表。如何从您的列表中返回特定整数?然后您需要实现将值添加到列表的方法。

它每次都返回空值

您的列表无法返回,NULL因为您在代码中初始化了它。

更新:

ArrayList<Integer> passedid = new ArrayList<Integer>();
Product prodobj = new Product();
passedid = prodobj.getId();

这绝对没有任何意义。看,在这里你创建了新的 ArrayList passid,它是空的,然后分配下一个空的 ArrayList。

如果你想通过 Intents 传递数据,你需要使用 Intent 的方法:

putIntegerArrayListExtra(key, value) // for putting data to Intent
getIntegerArrayListExtra(key) // retrieving data from Intent

你能建议我对我的问题中发布的产品类进行任何更改吗

所以可能你想将项目添加到你的列表中,所以你需要创建方法来实现这个目标:

public void add(int item) {
   this.id.add(item);
}

或者只是创建一些 ArrayList,填充值,然后也使用你的 setter:

ArrayList<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(3);
Product product = new Product();
product.setId(list);
于 2013-04-05T08:15:56.593 回答