【发布时间】:2015-12-28 00:29:06
【问题描述】:
我是 Java 新手。不幸的是,在 Java 中,有很多东西对于新手来说非常难以理解。
例如,
String str = "";
String[] arr = str.split("\\s+");
System.out.println(Arrays.toString(arr));
System.out.println(arr.length);
System.exit(0);
输出是
[]
1
但是为什么呢?如果有人能解释一下为什么数组的长度是 1,我将不胜感激。
【问题讨论】:
-
[]是 Java 打印列表[""]的令人困惑的方式("不打印) -
请注意,这与 Java 8 无关。
-
你必须学会区分literally nothing(大多数情况下是
null值)或空值(您在此处找到的内容为空字符串"",或在其他情况下为空列表、集合、数组),其中包含周围类型但不包含任何内容。 -
我会不幸地改成幸运地 :) 否则,它就不会有趣了