Java 如何使用for循环生成反向字符串?
我需要让我的代码以相反的顺序输出字符串。例如,输出应该返回“code”作为“edoc”。这就是我到目前为止所做的Java 如何使用for循环生成反向字符串?,java,string,return,output,reverse,Java,String,Return,Output,Reverse,我需要让我的代码以相反的顺序输出字符串。例如,输出应该返回“code”作为“edoc”。这就是我到目前为止所做的 public String reverseString(String str) { String res = ""; for (int i = 0; i <= str.length()-1; i++) { res = res + str.charAt(i); } return res; } publicstringreversestring(stringstr
public String reverseString(String str) {
String res = "";
for (int i = 0; i <= str.length()-1; i++) {
res = res + str.charAt(i);
}
return res;
}
publicstringreversestring(stringstr){
字符串res=“”;
对于(inti=0;i来说,你这样做的主要问题是你从str中提取第n个字符,并附加它,使其成为res的第n个字符
您可以这样修复它:
public String reverseString(String str) {
String res = "";
for (int i = str.length() - 1; i >= 0; i--) {
res = res + str.charAt(i);
}
return res;
}
您已将连接向后。请尝试:
public String reverseString(String str) {
String res = "";
for (int i = 0; i < str.length(); i++) {
res = str.charAt(i) + res; // Add each char to the *front*
}
return res;
}
publicstringreversestring(stringstr){
字符串res=“”;
对于(int i=0;i
还请注意更简单、规范的循环终止条件。这是否必须为
循环使用?这是java、c#还是什么?抱歉。它是java语言,并且它必须为
循环使用。OK作为注释,而非新StringBuilder(mystring)。reverse().toString()
选择并理解答案中的技巧,以增强您的“学习”练习;正面或负面的for循环。您应该对此答案添加一些注释,解释它是如何改进Jack Gore的(如果确实如此)。
public class ReverseString {
//1. using for loop and charAt
public static void main(String[] args)
{
String s="Selenium";
String reverse="";
for(int i=s.length()-1;i>=0;i--)
{
reverse=reverse+(s.charAt(i));
}
System.out.println(reverse);
}