从两个textArea获取相同的行?

时间:2016-12-07 12:08:35

标签: java

我有TextArea1TextArea2

内部TextArea1我有:

aaa
bbb
ccc
ddd

内部TextArea2我有:

111
222
333
444

我想像TextArea3一样追加

aaa111
bbb222
ccc333
ddd444

我尝试了以下代码,但它无效

for(String line : textArea1.getText().split("\\n")); String line2 : textArea2.getText()).split("\\n")) {
    textArea3.append("('" + line +"'," + line2);\n");
}

2 个答案:

答案 0 :(得分:0)

有很多方法可以做到这一点,(包括java 8流等)

您可以更好地使用String#split(),然后使用StringBuilder对象附加所有内容

示例

public static void main(String[] args) {
    String a = "aaa bbb ccc ddd";
    String b = "111 222 333 444";

    String[] aArray = a.split("\n");
    String[] bArray = b.split("\n");

    StringBuilder sb = new StringBuilder();

    for (int i = 0; i < bArray.length; i++) {
        sb.append(aArray[i]);
        sb.append(bArray[i]);
        sb.append("\n");
    }

    System.out.println(sb.toString());
}

答案 1 :(得分:0)

您需要使用空格" "作为分隔符,如下所示。

        String[] arr1 = "aaa bbb ccc ddd".split(" ");
        String[] arr2 = "111 222 333 444".split(" ");

        StringBuilder text3 = new StringBuilder("");

        for(int i=0;i<arr1.length; i++) {
            text3.append(arr1[i]).append(arr2[i]).append("\n");
        }


        TextArea textArea3 = new TextArea();
        textArea3.setText(text3.toString());