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

如何从此代码中的数组列表中删除空元素

如何从此代码中的数组列表中删除空元素

慕码人2483693 2022-09-14 10:49:57
我的代码遇到了一个问题,我无法删除数组列表中的空元素。它最终返回,但是这些空元素在多次尝试后不会被删除[1, 2, 3, 0, 8,  , 12 ,  ,   34 , 0 ]public static ArrayList<String> readNumbers() {    Scanner inFile = null;    File file = null;    String filePath = (JOptionPane.showInputDialog("Please enter a file path"));    int size = 0;    ArrayList<String> result = new ArrayList<String>();    try {        file = new File(filePath);        inFile = new Scanner(file);        int skippedCounter = 0;        for(int i = 0; inFile.hasNext(); i++){            if(inFile.hasNextInt())                result.add(inFile.next());            else{                String strOut = "";                String data = inFile.nextLine();                for(int j = 0; j <= data.length() - 1; j++){                    if(!Character.isLetter(data.charAt(j))){                        strOut += data.charAt(j);                    }                    else                        skippedCounter++;                }                if(!strOut.isEmpty())                    result.add(strOut);            }        }    }     catch (FileNotFoundException e) {        System.out.println("File not found");    }     catch(NumberFormatException e){        System.out.println("Not a number");    }    finally {        inFile.close();    }    int count = 0;    result.removeIf(String::isEmpty);    return result;}
查看完整描述

3 回答

?
三国纷争

TA贡献1804条经验 获得超7个赞

String::isEmpty()仅检查字符串的长度是否为零。如果您的字符串仅由空格或其他空格组成,则不会返回。true

您可以先执行 ,然后检查 。String.trim()String.isEmpty()

result.removeIf(s -> s.trim().isEmpty());


查看完整回答
反对 回复 2022-09-14
?
米脂

TA贡献1836条经验 获得超3个赞

我相信在Java 8及更高版本中,你可以做这样的事情从列表中删除所有空值:results.removeIf(item -> != StringUtils.isEmpty(item));



查看完整回答
反对 回复 2022-09-14
?
天涯尽头无女友

TA贡献1831条经验 获得超9个赞

您可以尝试:

List<Integer> listWithNulls = Arrays.asList(1,null, 2, 3, null, 4);

List<Integer> listWithoutNulls = listWithNulls.stream().filter(Objects::nonNull).collect(Collectors.toList());



查看完整回答
反对 回复 2022-09-14
  • 3 回答
  • 0 关注
  • 132 浏览

添加回答

举报

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