Ste*_*gas 3 java arrays string space
我有一个TextArea输入分隔值:
例如:
Value1 Value2 Value3 Value4 Value5
有没有一种快速的方法将它们放在一个String数组中
String[] newStringArray = ???
Run Code Online (Sandbox Code Playgroud)
使用String.split().如果您TextArea已命名textArea,请执行以下操作:
String[] values = textArea.getText().split("\n");
Run Code Online (Sandbox Code Playgroud)
你想使用String.split(String regex):
返回: 通过围绕给定正则表达式的匹配拆分此字符串计算出的字符串数组
所以,也许是这样的:
String[] newStringArray = textAreaContent.split("\n");
Run Code Online (Sandbox Code Playgroud)
这将textAreaContent围绕 的匹配拆分字符串"\n",这是 Swing 文本编辑器的规范化换行符(如javax.swing.text.DefaultEditorKitAPI 中所指定):
[...] 当文档在内存中时,该
"\n"字符用于定义换行符,无论文档在磁盘上时如何定义换行符。因此,出于搜索目的,"\n"应始终使用。
正则表达式总是可以满足您的特定需求(例如,您想如何处理多个空行?)但是这种方法可以满足您的需求。
String[] parts = "xx;yyy;z".split(";");
for (String part : parts) {
System.out.println("<" + part + ">");
}
Run Code Online (Sandbox Code Playgroud)
这打印:
<xx>
<yyy>
<z>
Run Code Online (Sandbox Code Playgroud)
这个忽略多个空行:
String[] lines = "\n\nLine1\n\n\nLine2\nLine3".trim().split("\n+");
for (String line : lines) {
System.out.println("<" + line + ">");
}
Run Code Online (Sandbox Code Playgroud)
这打印:
<Line1>
<Line2>
<Line3>
Run Code Online (Sandbox Code Playgroud)