📅  最后修改于: 2023-12-03 15:16:37.296000             🧑  作者: Mango
这是一个用Java编写的程序,用于交换句子中每个单词的第一个和最后一个字符。本文将提供一个完整的程序示例,并对其进行解释和说明。
下面是一个交换句子中单词的第一个和最后一个字符的程序示例:
public class WordSwapper {
public static void main(String[] args) {
String sentence = "Hello world, how are you today?";
String[] words = sentence.split(" ");
StringBuilder result = new StringBuilder();
for (String word : words) {
if (word.length() > 1) {
char firstChar = word.charAt(0);
char lastChar = word.charAt(word.length() - 1);
String swappedWord = lastChar + word.substring(1, word.length() - 1) + firstChar;
result.append(swappedWord).append(" ");
} else {
result.append(word).append(" ");
}
}
System.out.println(result.toString().trim());
}
}
首先,我们定义了一个字符串 sentence
,它包含了待交换单词的句子。你可以根据需要修改它的内容。
我们使用 split()
方法将句子分割成单词数组 words
,通过空格作为分隔符。
创建一个 StringBuilder
对象 result
,用于存储交换后的句子。
使用 for
循环遍历每个单词。
对于每个单词,如果长度大于 1,则获取其第一个字符和最后一个字符。
使用 word.substring(1, word.length() - 1)
获取去掉第一个和最后一个字符后的子字符串。
将交换后的单词重新组合,即最后一个字符 + 子字符串 + 第一个字符。
将交换后的单词添加到 result
中,并在后面加上空格。
如果单词的长度为 1,则保持不变。
循环结束后,使用 trim()
方法去掉 result
末尾的空格。
最后,将交换后的句子打印输出。
假设我们运行上面的程序,并将输入句子设为 "Hello world, how are you today?",则程序的输出结果将是 "oellH dlrow, woh era uoy ?yadot"。
注意,只有长度大于 1 的单词才会被交换首尾字符。
使用此程序,你可以轻松交换任何句子中每个单词的第一个和最后一个字符。只需替换 sentence
字符串的内容即可。