在java中逐字结合两个字符串

时间:2017-12-17 12:59:34

标签: java

我试图在java中逐字结合两个句子而不使用除charAt和length之外的任何特殊字符串方法。

就像

String s1="hello world";

String s2="programmers are greeting"

我希望将两个字符串合并为s1中的一个字,然后从s2中获取一个字,并保持到s1s2中没有字词为止s3

String s3="hello programmers world are greeting"

这是我的方法,但是当我跑步时它并没有返回任何东西。我无法找到问题:

void combine(String str1, String str2) {
    int i,
    j,
    sl1,
    sl2,
    s,
    test;

    sl1 = str1.length();
    sl2 = str2.length();
    test = sl1 + sl2;
    char[] ar1 = new char[sl1];
    char[] ar2 = new char[sl2];

    for (i = 0; i < ar1.length; i++)
    {
        ar1[i] = str1.charAt(i);
    }

    for (j = 0; j < ar2.length; j++)
    {
        ar2[j] = str2.charAt(j);
    }

    char[] array = new char[test];
    s = array.length;
    i = 0;
    j = 0;

    while (s <= i + j) {
        while (ar1[i] != ' ')
        {
            if (i == sl1) break;
            array[i + j] = ar1[i];
            i = i + 1;
        }

        while (ar2[j] != ' ')
        {
            if (j == sl2) break;
            array[j + i] = ar2[j];
            j = j + 1;
        }
    }

    for (i = 0; i < s; i++)
    {
        System.out.print(array[i]);
    }
}

1 个答案:

答案 0 :(得分:1)

方法组合无效,应为int否则您应使用System.out.println();输出答案