我的程序需要從用戶讀取一個字符串和兩個索引值,然後將字符與指定索引值交換,並將結果字符串保存在變量中。 現在我所能做的就是交換用戶輸入字符串的2個字母,我無法弄清楚如何從用戶讀取一個字符串和2個索引變量,然後交換指定索引中的那些字符
0
A
回答
1
使用String.toCharArray()
交換2個索引值的輸入轉換爲char[]
。然後,您可以使用索引並交換所需的字符。然後你需要的是從數組中構造一個新的字符串。請參閱String javadocs。
0
假設您有原始的String
和兩個索引,您可以像這樣交換字符。
public static String swapChars(String word, int firstIndex, int secondIndex) {
if (Math.min(firstIndex, secondIndex) < 0 || Math.max(firstIndex, secondIndex) > word.length() - 1) { // If either of the indices are negative or too large, throw an exception
throw new IllegalArgumentException("Indices out of bounds!");
}
if (firstIndex == secondIndex) { // If they are equal we can return the original string/word
return word;
}
char[] characters = word.toCharArray(); // Make a char array from the string
char first = characters[firstIndex]; // Store the character at the first index
characters[firstIndex] = characters[secondIndex]; // Change the character at the first index
characters[secondIndex] = first; // Change the character at the second index using the stored character
return new String(characters); // Return a newly built string with the char array
}
+1
你在哪裏檢查索引邊界? – MaxZoom
+0
已添加,因爲您提出要求! :)對字符串進行空檢查可能也是必要的,但我會將其留給提出問題的用戶。 –
相關問題
- 1. 用指定索引處的另一個字符串替換字符串
- 2. 每次遍歷一個字符串&提取子字符串的指定索引
- 3. 獲取字符串中最後一個子串索引後的字符
- 4. 查找字符串中字符的最後一個索引
- 5. 試圖用相應的索引中的另一個字符串的字符替換字符串的索引
- 6. 轉換前後的字符串索引
- 7. 一個字符串多個變量與索引檢查
- 8. MySQL中給定子字符串的最後一個索引
- 9. 獲取第n個索引字符串
- 10. 在字符串中的特定索引處替換字符串?
- 11. 獲取字符串索引
- 12. 獲取一個redis列表中特定字符串的索引?
- 13. 在array_multisort字符串索引轉換成一個整數指數
- 14. 創建一個索引號字符串
- 15. python - 索引一個拆分字符串
- 16. 得到一個字符串中的字符集的索引
- 17. 索引字符串?
- 18. 字符串索引
- 19. 索引字符串
- 20. 如何獲取字符串值的最後一個索引
- 21. 從一個索引提取子字符串到另一個索引
- 22. 查找字符串中字符的第一個索引
- 23. 字符串中第一個字符的T-SQL索引
- 24. NSString的行索引和列索引的字符串索引
- 25. Perl字符串,一個字符串中的變量,後跟單引號和另一個字符做什麼?
- 26. SQL子字符串和最後索引
- 27. F#刪除/替換特定字符串索引中的字符
- 28. 替換字符串中給定索引處的字符?
- 29. Matlab的字符串搜索和索引
- 30. 在最後一個字符的索引處完成一個字符串基礎
那麼,你如何交換前兩個字母?一點代碼會有幫助。 – RealSkeptic
您是否嘗試編寫任何代碼? – MaxZoom