重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
你的意思应该是将“ABC”字符串变成“CBA”吧?
创新互联主要从事网站设计、网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务镇雄,十余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575
下面是示例代码:
String str = "ABC";
StringBuffer strBuffer = new StringBuffer();
for(int i = str.length();i0;i--){
char c = str.charAt(i-1);
strBuffer.append(c);
}
System.out.println(strBuffer);
StringBuffer类本身有一个实现字符串逆序的方法public StringBuffer reverse();
此方法十分方便简单,查看API即可。下面我自己写一个方法来实现字符串的逆序输出
代码及运行结果如下
文字版代码如下:
import java.util.Scanner;
public class Test{
public static void main(String []args) {
Scanner in=new Scanner(System.in);
System.out.print("输入字符串:");
String s=in.nextLine();
System.out.println("字符串的逆序为:"+'\n'+reverse(s));
in.close();
}
public static String reverse(String s){
char[] chars=s.toCharArray();
int i;
s="";
for(i=chars.length-1;i=0;i--)
s+=chars[i];
return s;
}
}
你的Java程序错在用变量a去计算位数,导致a为0,所以后面的结果都为0,应该把a赋给一个临时变量t,用t去计算位数。
还有你的逆序算法有问题,不但复杂,而且结果不是逆序。
我给你一个Java语言的逆序算法,你看看吧.
import java.util.Scanner;
public class nx{
public static void main(String[] args){
Scanner s=new Scanner(System.in);
int a=s.nextInt();
while(a0){
System.out.print(a%10);
a=a/10;
}
}
}