我給了一個字串“my1kiran4name2is3”,我的預期輸出是“我的名字是 kiran”
說明1
my - 1
kiran - 4
name - 2
is - 3
我必須根據數字排列單詞。該字串僅包含從 1 到 9 的數字。
所以我的輸出是“我的名字是 kiran”
過去兩天一直在嘗試解決這個問題,但沒有找到任何剛開始學習java的方法,任何形式的幫助都將不勝感激。
uj5u.com熱心網友回復:
您可以使用StringBuilderandMap來解決您的問題:
String str = "my1kiran4name2is3";
Map<Integer, String> map = new HashMap<>();
StringBuilder key = new StringBuilder();
StringBuilder value = new StringBuilder();
for (char c : str.toCharArray()) {
if (Character.isDigit(c)) {
key.append(c);
} else {
if (key.length() > 0) {
map.put(Integer.valueOf(key.toString()), value.toString());
key.setLength(0);
value.setLength(0);
}
value.append(c);
}
}
map.put(Integer.valueOf(key.toString()), value.toString());
String response = String.join(" ", map.values()); // my name is kiran
這里的想法是遍歷所有字符并檢查是否為數字,然后最后將數字作為鍵存盤在映射中,將字串作為值存盤。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/526297.html
標籤:爪哇数组细绳
上一篇:如何為我的網站正確設定回應
下一篇:空值不斷出現
