字符串反转(asd->dsa)

题目描述

将 'abc123' 字符串反转,把你能想到的方法都写下来。

解题方法

1. 利用 StringBuffer 或 StringBuilder 的 reverse 成员方法:

1 public static String reverse1(String str) {
2   return new StringBuilder(str).reverse().toString();
3 }

2. 利用 String 的 toCharArray 方法先将字符串转化为 char 类型数组,然后将各个字符进行重新拼接:

1 public static String reverse2(String str) {
2   char[] chars = str.toCharArray();
3   String reverse = "";
4   for(int i = chars.length - 1; i >= 0; i--) {
5    reverse += chars[i];
6   }
7   return reverse;
8 }

3. 利用 String 的 CharAt 方法取出字符串中的各个字符:

1 public static String reverse3(String str) {
2   String reverse = "";
3   int length = str.length();
4   for (int i = 0; i < length; i++) {
5     reverse = str.charAt(i) + reverse;
6   }
7   return reverse;
8 }

最后补充 main 方法中的测试代码:

 1 public static void main(String[] args) {
 2     String s = "abc123";
 3 
 4     System.out.println("----------------");
 5     for (int i = s.length() - 1; i >= 0; i--) {
 6       System.out.print(s.charAt(i));
 7     }
 8     System.out.println("----------------");
 9 
10     System.out.println("变换前: " + s);
11     System.out.println("变换后: " + reverse1(s));
12     System.out.println("变换后: " + reverse2(s));
13     System.out.println("变换后: " + reverse3(s));
14   }

 

posted @ 2019-09-14 20:37  西红市菜鸡  阅读(272)  评论(0编辑  收藏  举报