【发布时间】:2015-08-13 17:02:13
【问题描述】:
团队,
我希望 java 程序以相反的顺序显示相同的字符串。
示例: 输入: 我是胡利。 输出: 我是吗
请帮我这个程序。
【问题讨论】:
-
那么你尝试了什么?您是否尝试过在 Google 中搜索?
-
是的,我什么都没找到。
-
你能帮忙吗,我想要不使用 Lib 函数的程序
标签: java
团队,
我希望 java 程序以相反的顺序显示相同的字符串。
示例: 输入: 我是胡利。 输出: 我是吗
请帮我这个程序。
【问题讨论】:
标签: java
您可以通过从头到尾迭代数组来拆分原始字符串并将其重新组合在一起:
String str = "I am hulli";
String[] parts = str.split(" ");
StringBuilder result = new StringBuilder(parts[parts.length - 1]);
// Assume there's at least one world in str
result.append(parts[parts.length - 1]);
for (int i = parts.length - 2; i >= 0; --i) {
result.append(" ").append(parts[i]);
}
System.out.println(result);
【讨论】:
给你
import java.util.*;
class ReverseString
{
public static void main(String args[])
{
String original, reverse = "";
Scanner in = new Scanner(System.in);
System.out.println("Enter a string to reverse");
original = in.nextLine();
int length = original.length();
for ( int i = length - 1 ; i >= 0 ; i-- )
reverse = reverse + original.charAt(i);
System.out.println("Reverse: "+reverse);
}
}
【讨论】:
您可以使用 Java Collections Framework 中预装的众多功能中的一个。像这样的东西会利用这个函数以相反的顺序显示字符串。
String text = "i am hulli";
String[] eachWord = text.split(" ").trim();
List<String> sentence = new ArrayList<>(eachWord.length);
for (int i = 0; i < eachWord.length; i++) {
sentence.add(eachWord[i]);
}
Collections.reverse(sentence);
for (int i = 0; i < sentence.size(); i++) {
System.out.print(sentence.get(i) + " ");
}
System.out.println();
【讨论】: