Java split()方法最后会删除空字符串?

Java split()方法最后会删除空字符串?

看看下面的程序。

try {
    for (String data : Files.readAllLines(Paths.get("D:/sample.txt"))){
        String[] de = data.split(";");
        System.out.println("Length = " + de.length);
    }} catch (IOException e) {
    e.printStackTrace();}

Sample.txt的:

1; 2; 3; 4A; B ;;A; B; C;

输出:

长度= 4长度= 2长度= 3

为什么第二个和第三个输出给出2和3而不是4.在sample.txt文件中,第二行和第三行的条件应该\n在给第三个字段的分隔符后立即给出换行符(或输入)。任何人都可以帮助我如何在不更改sample.txt文件条件和如何打印de[2](抛出 ArrayIndexOutOfBoundsException)值的情况下将长度设置为第2行和第3行4 ?


牧羊人nacy
浏览 3009回答 2
2回答

qq_遁去的一_1

您可以指定尽可能多地应用模式:String[] de = data.split(";", -1);有关详细信息,请参阅Javadoc中的split方法,其中包含两个参数。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java