我創建了一個將兩個給定字符串組合在一起的代碼,並通過交替兩個字符串中的字符來獲取字符串。 例如:「xyz」和「abc」會得到「xaybzc」組合字符串 - 相同字符的運行在一起
我遇到的問題是,對於同一個字符的任何運行,這些字符應該保持在一起。 例如:「ABC」和「xyyz」會得到「axbyycz」
這是我寫:
public static java.lang.String interleaveWithRuns(java.lang.String s, java.lang.String t)
{
String str = "";
int i = 0;
while(i < s.length() && i < t.length())
{
if(s.charAt(i) == s.charAt(i + 1))
{
str += s.charAt(i) + s.charAt(i+1);
}
if(t.charAt(i) == t.charAt(i+1))
{
str += t.charAt(i) + t.charAt(i+1);
}
str += s.charAt(i) +""+ t.charAt(i);
i++;
}
while(i < s.length())
{
str += s.charAt(i);
i++;
}
while(i < t.length())
{
str += t.charAt(i);
i++;
}
return str;
}
我知道,這部分是哪裏出了問題來了,但我不知道我應該做些什麼來解決這個問題。
if(s.charAt(i) == s.charAt(i + 1))
{
str += s.charAt(i) + s.charAt(i+1);
}
if(t.charAt(i) == t.charAt(i+1))
{
str += t.charAt(i) + t.charAt(i+1);
}
謝謝!它完美的作品 – Zebs