通过 split(\0) 将 String 转换为 String[] 是否安全?

val*_*yan 1 java arrays string split

为了将 String 类型的字符串(不包含“\0”)用作参数,它必须是 String[] 类型,我以这种方式将 String 转换为 String[]:

string.split("\0")
Run Code Online (Sandbox Code Playgroud)

你觉得怎么样,够安全吗?

它是否总是按预期工作(对于没有“\0”的任何字符串)?

Sla*_*kow 6

有没有理由反对这样做

new String[]{string}?

因为那会比那种方法更有效,也更易读。

编辑:我还想补充一点, split 可以有一个关于数组最大大小的第二个参数,所以如果你在那里放一些正则表达式,你可以把它1作为第二个参数并保证它实际上不会做任何拆分,但没有理由通过上述方法这样做。