2

我无法理解这一点。

System.err.println(convertPdfToText(save).split("3\\.8").length);

正如预期的那样打印出 3 的结果。

事实上,我希望用户能够获得相同的结果。因此,当我运行此代码时:

System.err.println(convertPdfToText(save).split(seperator).length);

当用户在 JInputField 中输入“3\\.8”时,我得到的数组长度返回为 1。

这里到底发生了什么?

4

1 回答 1

5

"\\"在 Java 程序中表示包含一个\. 在您的情况下,用户必须输入3\.8才能获取由 Java 代码表示的字符串"3\\.8"

也就是说,您似乎对 Java 的字符串字面量语法(处理\"特殊处理)和从外部源输入的字符串(每个字符代表自己)之间的区别感到困惑。

于 2012-11-25T01:21:39.633 回答