Java程序:交换句子中每个单词的首尾字母
问题陈述
给定一个句子,创建一个高效的Java程序,交换每个单词的首尾字母,如下所示:
输入
That is a sample
输出
The string after swapping the last characters of every word is : thaT si a eampls
交换句子中单词首尾字母的步骤
以下是交换句子中单词首尾字母的步骤:
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()方法。然后将结果打印到控制台。
广告