Java程式:交換句子中每個單詞的首尾字母


問題陳述

給定一個句子,建立一個高效的Java程式,交換每個單詞的首尾字母,如下所示:

輸入

That is a sample

輸出

The string after swapping the last characters of every word is :
thaT si a eampls

交換句子中單詞首尾字母的步驟

以下是交換句子中單詞首尾字母的步驟:

  • 字串轉換為字元陣列。
  • 使用while迴圈迭代字元陣列,以識別每個單詞的開始和結束。
  • 對於每個單詞,交換首尾字母。
  • 將修改後的字元陣列轉換回字串並返回。

Java程式:交換句子中每個單詞的首尾字母

public class Demo {
 static String swap_chars(String my_str) {
char[] my_ch = my_str.toCharArray();
for (int i = 0; i < my_ch.length; i++) {
 int k = i;
 while (i < my_ch.length && my_ch[i] != ' ')
i++;
char temp = my_ch[k];
my_ch[k] = my_ch[i - 1];
my_ch[i - 1] = temp;
}
return new String(my_ch);
 }
 public static void main(String[] args) {
String my_str = "That is a sample";
System.out.println("The string after swapping the last characters of every word is : ");
System.out.println(swap_chars(my_str));
 }
}

輸出

The string after swapping the last characters of every word is :
thaT si a eampls

程式碼解釋

Demo類包含一個名為swap_chars()的方法,該方法返回一個字串。在此方法中,輸入字串my_str使用toCharArray()方法轉換為字元陣列my_ch。一個for迴圈使用其長度my_ch.length迭代字元陣列my_ch。在迴圈中,整數k儲存當前索引。然後,while迴圈只要i小於my_ch.length且my_ch[i]不是空格就繼續迭代。對於每個單詞,如果下一個字元不是空格,則交換首尾字母。

處理完所有單詞後,將修改後的字元陣列轉換回字串並返回。在主方法中,定義字串my_str,並使用此字串作為引數呼叫swap_chars()方法。然後將結果列印到控制檯。

更新於:2024年7月31日

2K+ 瀏覽量

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.