你有一个可行的方法,但你可以通过使用一个带有两个计数器的循环来显着简化它:
int apos = 0, bpos = 0; while (apos != a.length() || bpos != b.length()) { if (apos < a.length()) m += a.charAt(apos++); if (bpos < b.length()) m += b.charAt(bpos++); }
在这个循环中,您将通过推进每一步的"进步" apos
,bpos
或两者兼而有之.一旦字符串用完字符,其相应的pos
停止前进.当两者pos
到达终点时,循环结束.
注意:当您需要在循环中附加到字符串时,请使用StringBuilder
.