zoukankan      html  css  js  c++  java
  • Java字符串反转常见的几种方式?

    (1)通过StringBuilder的reverse()方法,速度最快:

     1 public class StringReverse {
     2     public static void main(String[] args) {
     3         String str="hello";
     4         System.out.println(reverse(str));
     5         
     6     }
     7     public static StringBuilder reverse(String str){
     8         return new StringBuilder(str).reverse();
     9     }
    10 }

    (2)通过递归实现,比较高大上:

     1 public class StringReverse {
     2     public static void main(String[] args) {
     3         String str="hello";
     4         System.out.println(reverse(str));
     5 
     6     }
     7     public static String reverse(String str){
     8         int len=str.length();
     9         if(len==1)
    10             return str;
    11         //subString(1)表示把字符串中索引1之后的字串拿出来;charAt(0)表示取字符串的第一个字符
    12         return reverse(str.substring(1))+str.charAt(0);
    13     }
    14 }

    (3)通过charAt()方法:

     1 public class StringReverse {
     2     public static void main(String[] args) {
     3         String str="hello";
     4         System.out.println(reverse(str));
     5 
     6     }
     7     public static String reverse(String str){
     8         String ans="";
     9         for(int i=str.length()-1;i>=0;i--){
    10             char c=str.charAt(i);
    11             ans+=c;
    12         }
    13         return ans;
    14     }
    15 }

    (4)通过String的toCharArray()方法

     1 public class StringReverse {
     2     public static void main(String[] args) {
     3         String str="hello";
     4         System.out.println(reverse(str));
     5 
     6     }
     7     public static String reverse(String str){
     8         char[] chars = str.toCharArray();
     9         String ans="";
    10         for (int i = chars.length - 1; i >= 0; i--) {
    11             ans+=chars[i];
    12         }
    13         return ans;
    14     }
    15 }
  • 相关阅读:
    mysql数据引擎
    R语言入门
    springboot整合springmvc、mybatis
    svn搭建和配置
    UML常用图的几种关系的总结
    cookies和session机制
    Java总结篇系列:Java多线程(三)
    Java总结篇系列:Java多线程(一)
    Java总结篇系列:Java多线程(二)
    restframework之认证
  • 原文地址:https://www.cnblogs.com/treasury/p/12593600.html
Copyright © 2011-2022 走看看