jialiang1012 2016-06-26 00:25 采纳率: 46.7%
浏览 9715

java List结合调用add()方法往集合里添加数据报空指针异常

如题,网上搜索了下说是没有初始化list集合,但是初始化了还是报空指针异常,贴出代码,加注释的那个地方报异常,求高手帮忙看下啊

 package com.pb.action.ajaxAction;

import java.util.ArrayList;
import java.util.List;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts2.ServletActionContext;

import net.sf.json.JSONArray;

import com.opensymphony.xwork2.ActionSupport;
import com.pb.dao.RuKuDao;
import com.pb.entity.Yp;
import com.pb.entity.Ypmczd;
import com.pb.service.impl.DgTiJiaoServiceImpl;
import com.pb.util.GetXiTongShiJian;
import com.pb.util.PinYin4j;

public class TjplAjaxAction extends ActionSupport {
    /*private List<String> aList;*/
    private List<String> jsonList;
    private Integer gg;
    private String zxdw;
    private String zxdwdj;
    private Integer cgsl;
    private Integer sbsl;
    private List<String> jsonListTow;


    public String plTiJiao(){
        /*JSONArray jsonArray = JSONArray.fromObject(aList);
        List<Yp> list = JSONArray.toList(jsonArray, Yp.class);*/
        HttpServletRequest request = ServletActionContext.getRequest();
        String[] str=request.getParameterValues("aList");   
        System.out.println(str[0]);
        jsonListTow=new ArrayList<String>();
        for(int i=0;i<str.length;i++){
            String msg=GetXiTongShiJian.getYMDHMSS()+i;
            String[] obj=str[i].split(",",-1);
            System.out.println(obj[2]);
            RuKuDao rkd=new RuKuDao();
            List<Object[]> list=rkd.findYaoPinMC(obj[0]);
            if(list.size()>0){
                sbsl++;
                jsonList.add(String.valueOf(i+1));
            }else{
                if("".equals(obj[3]) || obj[3]==null){
                    gg=1;
                    zxdw=obj[2];
                }else{
                    gg=Integer.parseInt(obj[3]);
                    zxdw=obj[4];
                }
                if("".equals(obj[6]) || obj[6]==null){
                    zxdwdj="0";
                }else{
                    zxdwdj=obj[6];
                }
                Yp yp=new Yp();
                yp.setYpmc(obj[0]);
                yp.setYpkc((new DgTiJiaoServiceImpl().kucunliang(Integer.parseInt(obj[1]), gg)).toString());
                yp.setYpzxdw(zxdw);
                yp.setYpzddw(obj[2]);
                yp.setYpgg(gg.toString());
                yp.setZxdwdj(zxdwdj);
                yp.setZddwdj(obj[5]);
                yp.setYpmcid(msg);
                String pinyin=PinYin4j.getPinYin(obj[0]);
                String shouzimu=PinYin4j.getPinYinHeadChar(obj[0]);
                Ypmczd ypmczd=new Ypmczd();
                ypmczd.setYpmc(obj[0]);
                ypmczd.setYpmcpi(pinyin);
                ypmczd.setYpmcid(msg);
                ypmczd.setShouzimu(shouzimu);
                if(rkd.saveYaoPinRuKu(yp) && rkd.saveYpmczd(ypmczd)){
                    cgsl++;
                    jsonListTow.add(String.valueOf(i+1));//debug走到这里就开始报空指针异常
                }else{
                    sbsl++;
                }
            }

        }

        return "success";
    }
    public List<String> getJsonListTow() {
        return jsonListTow;
    }

    public void setJsonListTow(List<String> jsonListTow) {
        this.jsonListTow = jsonListTow;
    }

    public Integer getCgsl() {
        return cgsl;
    }

    public void setCgsl(Integer cgsl) {
        this.cgsl = cgsl;
    }

    public Integer getSbsl() {
        return sbsl;
    }

    public void setSbsl(Integer sbsl) {
        this.sbsl = sbsl;
    }

    public String getZxdwdj() {
        return zxdwdj;
    }

    public void setZxdwdj(String zxdwdj) {
        this.zxdwdj = zxdwdj;
    }

    public String getZxdw() {
        return zxdw;
    }

    public void setZxdw(String zxdw) {
        this.zxdw = zxdw;
    }

    public Integer getGg() {
        return gg;
    }

    public void setGg(Integer gg) {
        this.gg = gg;
    }
    public List<String> getJsonList() {
        return jsonList;
    }

    public void setJsonList(List<String> jsonList) {
        this.jsonList = jsonList;
    }

}

debug走到注释那一行直接报的异常如图,由于debug不是很熟,也不是道这个异常是不是走到注释那一行报的,反正是走到注释那一就是直接停止了然后出现的,现在把debug报的异常贴出来,如下
图片说明

  • 写回答

5条回答

  • jialiang1012 2016-06-26 01:01
    关注

    又分析了下debug,貌似是走到注释那一行的上一行之后再按F6就停止了,开始报异常,难道说这个异常是注释的那一行的上一行的错误????

    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题