首页 新闻 会员 周边

String字符串反转顺序不一样?

0
[待解决问题]

对一个字符串进行反转,为什么str+ string.charAt(i)和string.charAt(i)+str得到的顺序不一样?

public static void main(String[] args) {


    String a = new String("abcdefghijklmn") ;
    System.out.println( reverse(a));
   
}

public static String reverse(String string) {
    String str = "";

    for (int i = string.length()-1; i >=0 ; i--) {
         str1 = str+ string.charAt(i);
      // str2 = string.charAt(i)+str;
    }
    return str;
}
清风明月~的主页 清风明月~ | 菜鸟二级 | 园豆:202
提问于:2019-09-06 02:42

不要再循环里用String做字符串拼接

lovexy-fun 4年前

你可以在你的循环里面把 str 打印出来看看效果

不如隐茶去 4年前
< >
分享
所有回答(3)
0

你这写的,string是个关键词,你用来做参数不合适吧

jqw2009 | 园豆:2439 (老鸟四级) | 2019-09-06 08:35
0

一个在前一个在后, 自己心算一下就知道了
走第一次
str1 = str+ string.charAt(i); = n
str2 = string.charAt(i)+str; =n

走第二次 string.charAt(i)=m
str1 = str+ string.charAt(i); = nm
str2 = string.charAt(i)+str; =mn

风浪 | 园豆:2996 (老鸟四级) | 2019-09-06 15:31
0

abcdefghijklmn

  1. str+charAt(i)
str=n
str=n+m
str=(n+m)+l
  1. charAt(i)+str
str=n
str=m+n
str=l+(m+n)
张朋举 | 园豆:1915 (小虾三级) | 2019-09-10 16:39
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册