求助,关于char数组输出的问题

比如有这些数组:

char[] c1={'这','是','一','段','文','本'};
char[] c2={'明','天'};

现在要求是,如果输入的是c1数组,得到以下东西:

String s1 = "这";
String s2 = "这是";
String s3 = "这是一";
……
String s6 = "这是一段文本";

同理,如果是输入的是c2数组的话,得到以下:

String s1 = "明";
String s2 = "明天";

大佬们这可咋整

public static void main(String[] args) {
char[] charC1 = new char[2000];
Scanner scanner = new Scanner(System.in);
String nextLine ="";
while((nextLine = scanner.nextLine())!=null){
charC1 = nextLine.toCharArray();
String s = "";
for (int i = 0; i < charC1.length; i++) {
s = s + charC1[i];
System.out.println(s);
}
}

}

已实现,请采纳

String[] foo(char[] c)
{
String[] result = new String[c.length];
for (int i = 1; i < c.length; i++)
{
for (int j = 0; j < i; j++)
{
if (result[i] == null) 
result = c[i].toString();
else
result += c[i].toString();
}
}
return result;
}
`public class Test {

    public static void main(String[] args) {
        char[] c1={'这','是','一','段','文','本'};
        char[] c2={'明','天'};
        getString(c1);
    }

    public static void getString(char[] chars){
        for (int i = 0; i <= chars.length-1; i++){
            String str = "";
            for (int j = 0; j <= i; j++){
                str += chars[j];
            }
            System.out.println(str);
        }
    }
}

结果:

这是
这是一
这是一段
这是一段文
这是一段文本