从用户输入中打印几个回文



我想从用户输入中打印几个单词, 例如那句话:"我们爱爸爸妈妈" 该程序将打印"妈妈爸爸" 我不知道如何打印这些单词。只是字符 M 和 D。 非常感谢! 这是我的代码:

Scanner s = new Scanner(System.in);
System.out.println("Please enter a Sentence");
String input = s.nextLine();
String output = "";
for (int i = 0, j = 0; i < input.length(); i++) {
if (input.charAt(i) == ' ') {
j = i + 1;
}
if (j < i && input.charAt(j) == input.charAt(i)) {
output=output+(input.charAt(i);
}
}
System.out.println(output);
}

}

您可以拆分任务:

  1. 创建检查字符串是否为回文的方法。例子
  2. 按空格拆分输入行并在循环中检查每个字符串是否为回文。打印或存储,您必须选择:

使用串联将结果保存在字符串中。

String input = s.nextLine();
String result = "";
for(String word : input .split(" ")) {
if(isPalindrome(word))
result += word + " ";
}

将回文单词保存在数组列表中。

String input = s.nextLine();
List<String> words = new ArrayList<>();
for(String word : input .split(" ")) {
if(isPalindrome(word))
list.add(word);
}

以下是我将如何解决这个问题。

  1. 在空格上拆分字符串(假设您不需要担心标点符号(
  2. 循环遍历您从拆分中获得的数组,并使用 StringBuilder 反转所有字符串。(将这些反向字符串保存在新数组中(
  3. 最后,使用双精度 for 循环循环遍历两个数组,比较反向数组中的字符串和原始数组中的字符串。如果一个单词相同,它是一个回文,你可以打印它或用它做任何事情。

相关内容

  • 没有找到相关文章

最新更新