我有TextArea
输入分隔值:
例如:
Value1 Value2 Value3 Value4 Value5
是否有快速方法将它们放入String
数组
String[] newStringArray = ???
答案 0 :(得分:6)
使用String.split()
。如果您的TextArea
名为textArea
,请执行以下操作:
String[] values = textArea.getText().split("\n");
答案 1 :(得分:3)
您想使用String.split(String regex)
:
返回:通过在给定正则表达式的匹配项周围拆分此字符串计算的字符串数组
所以,也许是这样的:
String[] newStringArray = textAreaContent.split("\n");
这会将textAreaContent
字符串拆分为"\n"
的匹配项,这是Swing文本编辑器的规范化换行符(在javax.swing.text.DefaultEditorKit
API中指定):
[...]当文档在内存中时,
"\n"
字符用于定义换行符,无论文档在磁盘上时如何定义换行符。因此,出于搜索目的,应始终使用"\n"
。
正则表达式总是可以根据您的特定需求进行计算(例如,您希望如何处理多个空行?)但是此方法可以满足您的需要。
String[] parts = "xx;yyy;z".split(";");
for (String part : parts) {
System.out.println("<" + part + ">");
}
打印:
<xx>
<yyy>
<z>
这个忽略了多个空行:
String[] lines = "\n\nLine1\n\n\nLine2\nLine3".trim().split("\n+");
for (String line : lines) {
System.out.println("<" + line + ">");
}
打印:
<Line1>
<Line2>
<Line3>