Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在ArrayList中设置值_Java_List_Arraylist - Fatal编程技术网

Java 如何在ArrayList中设置值

Java 如何在ArrayList中设置值,java,list,arraylist,Java,List,Arraylist,我正在创建类型为B的ArrayList: ArrayList<B> cert= new ArrayList<B>; B a = util.getCerts(path).iterator().next(); this.cert.add(a); this.certNode(certs); ArrayList证书=新的ArrayList; ba=util.getCerts(path.iterator().next(); 本证书添加(a); 此.certNode(certs)

我正在创建类型为
B
ArrayList

ArrayList<B> cert= new ArrayList<B>;
B a  = util.getCerts(path).iterator().next();
this.cert.add(a);
this.certNode(certs);
ArrayList证书=新的ArrayList;
ba=util.getCerts(path.iterator().next();
本证书添加(a);
此.certNode(certs);
当我尝试设置该值时,出现空指针异常:

void certNode(ArrayList<B> certResp) 
{       
    ArrayList<RespNode> exp = new ArrayList<RespNode>();
    for (int i = 0; i< certResp.size(); i++) {  
        exp.get(i).setxxx(certResp.get(i).getxxx());
        exp.get(i).setxxx(certResp.get(i).getxxx().toString());     
    }
 }
void certNode(ArrayList certrep)
{       
ArrayList exp=新的ArrayList();
对于(inti=0;i

任何帮助都会很好

由于您刚刚创建了ArrayList实例
exp
exp.get(i)
不存在,因此无法调用
exp.get(i).setxxx(…)

编辑:

尝试:

void certNode(ArrayList certrep){
ArrayList exp=新的ArrayList();
对于(inti=0;i

如果不知道
certResp.get(i).getxxx()
的返回值很难确定,但是如果它返回
RespNode
,上面的代码将添加列表的
RespNode
实例。

因为您刚刚创建了ArrayList实例
exp
exp.get(i)
,所以你不能调用exp.get(i).setxxx(…)

编辑:

尝试:

void certNode(ArrayList certrep){
ArrayList exp=新的ArrayList();
对于(inti=0;i

如果不知道
certResp.get(i).getxxx()
的返回值很难确定,但是如果它返回
RespNode
,上面的代码将添加列表的
RespNode
实例。

因为您刚刚创建了ArrayList实例
exp
exp.get(i)
,所以你不能调用exp.get(i).setxxx(…)

编辑:

尝试:

void certNode(ArrayList certrep){
ArrayList exp=新的ArrayList();
对于(inti=0;i

如果不知道
certResp.get(i).getxxx()
的返回值很难确定,但是如果它返回
RespNode
,上面的代码将添加列表的
RespNode
实例。

因为您刚刚创建了ArrayList实例
exp
exp.get(i)
,所以你不能调用exp.get(i).setxxx(…)

编辑:

尝试:

void certNode(ArrayList certrep){
ArrayList exp=新的ArrayList();
对于(inti=0;i

如果不知道
certResp.get(i).getxxx()
的返回值,很难确定,但是如果它返回
RespNode
,上面的代码将添加列表的
RespNode
实例。

问题就在这里:
exp.get(i)
exp
是新创建的ArayList,因此它是空的,因此在索引
i

处有一个
null
,问题在这里:
exp.get(i)
exp
是新创建的ArayList,因此它是空的,因此在索引
i

处有一个
null
,问题在这里:
exp.get(i)
exp
是新创建的ArayList,因此它是空的,因此在索引
i

处有一个
null
,问题在这里:
exp.get(i)
exp
是新创建的ArayList,因此它是空的,因此在索引
i

处有一个
null
您的列表“exp”是空的。在for循环中,您得到一个null值;从null调用方法将导致NullPointerException


您必须先在列表中输入值,然后才能尝试访问它们。

您的列表“exp”为空。在for循环中,您得到一个null值;从null调用方法将导致NullPointerException


您必须先在列表中输入值,然后才能尝试访问它们。

您的列表“exp”为空。在for循环中,您得到一个null值;从null调用方法将导致NullPointerException


您必须先在列表中输入值,然后才能尝试访问它们。

您的列表“exp”为空。在for循环中,您得到一个null值;从null调用方法将导致NullPointerException


在尝试访问值之前,必须将值放入列表中。

创建新的空ArrayList,即[]

exp.get(i) 
给你空值

相反,您可以使用ArrayList的add方法

void certNode(ArrayList<B> certResp) {
    //Here new empty list is created i.e exp=[] //no elements inside
    //Suppose your certResp=[B@12312,B@123834] i.e two B class objects     
    ArrayList<RespNode> exp = new ArrayList<RespNode>();

    for (int i = 0; i< certResp.size(); i++) {  //Size of certResp=2 as it contains 2 B objects  
        RespNode res=new RespNode(); //Create a RespNode class as you want to add of certResp ArrayList<RespNode>

        res.setxxx(certResp.get(i)); //Take value of xxx method of certResp.get(i) i.e B object xxx method and set into res.setXXX or RespNode class

        exp.add(res); //add res object into ArrayList
    }
 }
void certNode(ArrayList certrep){
//这里创建了新的空列表,即exp=[]//其中没有元素
//假设你的证书=[B@12312,B@123834]即两个B类对象
ArrayList exp=新的ArrayList();
对于(int i=0;i
创建新的空ArrayList时,即[]

exp.get(i) 
给你空值

相反,您可以使用ArrayList的add方法

void certNode(ArrayList<B> certResp) {
    //Here new empty list is created i.e exp=[] //no elements inside
    //Suppose your certResp=[B@12312,B@123834] i.e two B class objects     
    ArrayList<RespNode> exp = new ArrayList<RespNode>();

    for (int i = 0; i< certResp.size(); i++) {  //Size of certResp=2 as it contains 2 B objects  
        RespNode res=new RespNode(); //Create a RespNode class as you want to add of certResp ArrayList<RespNode>

        res.setxxx(certResp.get(i)); //Take value of xxx method of certResp.get(i) i.e B object xxx method and set into res.setXXX or RespNode class

        exp.add(res); //add res object into ArrayList
    }
 }
void certNode(ArrayList certrep){
//这里创建了新的空列表,即exp=[]//其中没有元素
//假设你的证书=[B@12312,B@123834]即两个B类对象
ArrayList exp=新的ArrayList();
对于(int i=0;i    void certNode(ArrayList<B> certResp) {      
        ArrayList<RespNode> exp = new ArrayList<RespNode>();
        for (B b : certResp){
          RespNode resp = new RespNode();
          resp.setxxxx(b.getxxxx());
          exp.add(resp);
        }
     }