为了账号安全,请及时绑定邮箱和手机立即绑定

将 String 中不存在的元素添加到 ArrayList<String>

将 String 中不存在的元素添加到 ArrayList<String>

繁星coding 2023-07-28 17:00:48
所以,我正在读取 txt 文件。该文件是这样的,用选项卡分隔"/t" ID    name    test    date    object 1     John    pass    9/13    RC_CUST_1 2     John    fail    10/13   RC_CUST_1 3     John    pass                    我正在读取这样的txt文件:String line="";ArrayList<String> data = new ArrayList<String>();FileReader fIn;BufferedReader buff;fIn = new FileReader("...");buff = new BufferedReader( fIn );while( ( line = buff.readLine() ) != null  ){        if(!line.isEmpty())            data.add(line);}在我的代码后期我这样做:    ArrayList<String> name1  = new ArrayList<String>();    ArrayList<String> RC1  = new ArrayList<String>();    ArrayList<String> date1  = new ArrayList<String>();    ArrayList<String> pass1 = new ArrayList<String>();    String [] substr2;for(int k=0;k<data.size();k++){    substr2=data.get(k).split("\t");    RC1.add(substr2[4]);    name1.add(substr2[1]);    date1.add(substr2[3]);    pass1.add(substr2[2]);      }我有一个错误,因为你可以看到,我的 ID 号 3 没有任何日期或对象。我该如何解决这个问题,以及如何知道哪个 ID 没有 adate或 aobject例如,我想打印:ID number x has not date或者ID number x has not any object如果我有这种类型的错误
查看完整描述

1 回答

?
慕容森

TA贡献1853条经验 获得超18个赞

分割后\t你会得到一个数组作为结果。您可以在访问数组中的字段之前检查数组的长度。


for(int k=0;k<data.size();k++) {

    String [] substr2 = data.get(k).split("\t");

    int length = substr2.length

    if (length >= 5) {

        RC1.add(substr2[4]);

    } else {

        System.out.println("no object found");

    }

    ....     

}


查看完整回答
反对 回复 2023-07-28
  • 1 回答
  • 0 关注
  • 121 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信