精华内容
下载资源
问答
  • java字符串反转

    2020-12-08 16:03:50
    * java字符串反转 * 例:输入1234 输出4321 * 输入qwer 输出rewq * */ public class Test05 { public static void main(String[] args) { System.out.println("请输入一串字符串:"); Scanner sc=new Scanner...
    import java.util.Scanner;
    /**
     * java字符串反转
     * 例:输入1234   输出4321
     *     输入qwer    输出rewq
     * */
    public class Test05 {
        public static void main(String[] args) {
            System.out.println("请输入一串字符串:");
            Scanner sc=new Scanner(System.in);
            String str=sc.nextLine();
            sc.close();
            String str1=rev1(str);
            System.out.println(str1);
        }
        //利用数组遍历方法
        public static String rev(String str){
            char[] array_char=str.toCharArray();
            String rex="";
            for(int i=array_char.length-1;i>=0;i--){
                rex+= array_char[i];
            }
            return rex;
        }
        //利用StringBuilder的reverse方法
        public static String rev1(String str){
            StringBuilder sb=new StringBuilder(str);
            String rex=sb.reverse().toString();
            return rex;
        }
    }
    
    

     

    展开全文
  • JAVA字符串反转

    2020-07-04 11:52:15
    需求:将输入字符串反转打印出来 实现:单独写个方法,在main中直接调用代码简洁 package com.itheima_09; import java.util.Scanner; public class StudentDemo { public static void main(String[] args) { /...

    需求:将输入字符串反转打印出来
    实现:单独写个方法,在main中直接调用代码简洁

    package com.itheima_09;
    
    
    import java.util.Scanner;
    
    public class StudentDemo {
        public static void main(String[] args) {
            //需求:字符串反转
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入字符串");
            String str1 = sc.nextLine();
            System.out.println("输入字符串为: "+str1);
            //核心方法调用
            String str2 = revers(str1);
            System.out.println("反转字符串为: "+str2);
        }
        public static String revers(String s){
            String str="";
            for (int i = s.length()-1; i >= 0; i--) {
                str +=s.charAt(i);
            }
            return str;
        }
    }
    
    

    也可以直接利用StringBuffer的reverse()方法

    public static String reverseStringBuffer(String s){
       StringBuffer sb = new StringBuffer(s);
       String afterReverse = sb.reverse().toString();
       return afterReverse;
      } 
    
    展开全文
  • Java字符串反转

    2021-03-08 12:03:28
    //字符串反转 //思路:将字符串转换为字符数组,再把字符数组转换为包装类数组,再把包装类数组转换为集合,利用集合方法反转字符串,再转为数组 public String reverse(String s){ char[] chars = s.toCharArray...
        //字符串反转
        //思路:将字符串转换为字符数组,再把字符数组转换为包装类数组,再把包装类数组转换为集合,利用集合方法反转字符串,再转为数组
        public String reverse(String s){
            char[] chars = s.toCharArray();
            Character[] characters = new Character[s.length()];
            for (int i = 0; i < chars.length; i++) {
                characters[i] = chars[i];
            }
            List<Character> characterList = Arrays.asList(characters);
            Collections.reverse(characterList);
            characters = (Character[])characterList.toArray();
            for (int i = 0; i < characters.length; i++) {
                chars[i] = characters[i];
            }
            return new String(chars);
        }
    
        //字符串反转2
        //将字符串转换为字符数组,将字符数组从后向前遍历,并放入到一个新的字符数组中,然后将字符数组转换为字符串返回
        public String reverse2(String s ){
            char[] chars = s.toCharArray();
            char[] newChars = new char[s.length()];
            for(int i = chars.length-1,j=0;i>=0;i--,j++){
                newChars[j] = chars[i];
            }
            return new String(newChars);
        }
    
    
        //优化
        public String reverse3(String s){
            char[] chars = s.toCharArray();
            char[] newChars = new char[s.length()];
            for (int i = chars.length-1; i >= 0; i--) {
                newChars[chars.length-i-1] = chars[i];
            }
            return new String(newChars);
        }
    
        //优化
        public String reverse4(String s){
            char[] chars = s.toCharArray();
            for (int i = 0; i < chars.length / 2 ; i++) {
                //利用两个数交换,在原本字符数组上修改
                char temp = chars[i];
                chars[i] = chars[chars.length-i-1];
                chars[chars.length-i-1] = temp;
            }
            return new String(chars);
        }
    
        //优化
        public String reverse5(String s){
            char[] chars = s.toCharArray();
            for (int i = 0; i < chars.length / 2 ; i++) {
                //利用两个数交换,在原本字符数组上修改
                //int a=3,b=4;
                //a=a+b;
                //b=a-b;
                //a=a-b;
                //不需要创建第三个变量,但是相加可能会超过char的最大范围65535,再进行强转时会出现丢失字节的情况,如下:
                //char超出范围
                //char c8 = (char) (65536+97);
                //System.out.println(c8);//a
                chars[i] = (char) (chars[i] + chars[chars.length-i-1]);
                chars[chars.length-i-1] = (char) (chars[i] - chars[chars.length-i-1]);
                chars[i] = (char) (chars[i] - chars[chars.length-i-1]);
            }
            return new String(chars);
        }
    
    
    
        //优化
        public String reverse6(String s){
            char[] chars = s.toCharArray();
            for (int i = 0; i < chars.length / 2 ; i++) {
                //利用两个数交换,在原本字符数组上修改
                //int a=3,b=4;
                //a = a ^ b;
                //b = a ^ b;
                //a = a ^ b;
                //不需要创建第三个变量,但是异或可能会超过char的最大范围65535,再进行强转时会出现丢失字节的情况,如下
                //char超出范围
                //char c8 = (char) (65536^97);
                //System.out.println(c8);//a
                chars[i] = (char) (chars[i] ^ chars[chars.length-i-1]);
                chars[chars.length-i-1] = (char) (chars[i] ^ chars[chars.length-i-1]);
                chars[i] = (char) (chars[i] ^ chars[chars.length-i-1]);
            }
            return new String(chars);
        }
    public String reverse7(String s){
            return new String(new StringBuilder(s).reverse());
        }
    

    综合上述所有方法,关注reverse4方法和reverse7方法

    展开全文
  • JAVA 字符串反转

    2021-03-01 22:05:53
    字符串反转 思路: 先把对应的字符串 转换为 字符数组,遍历对应的字符数组,从后往前抓取对应的字符,放入到空的字符串变量。 public class Test01 { public static void main(String[] args) { String str = ...

    字符串反转

    思路:

    先把对应的字符串 转换为 字符数组,遍历对应的字符数组,从后往前抓取对应的字符,放入到空的字符串变量。
    
    public class Test01 {
        public static void main(String[] args) {
            String str = "abcdef";
            System.out.println(reverse(str));  //fedcba  
    		  
        }
        
        方式一:
        public static String reverse(String str){
            char[] charArray = str.toCharArray();
            String reverse = "";
            for (int i = charArray.length -1; i >= 0; i--) {
                reverse += charArray[i];
            }
            return reverse;
        }
        
        方式二:
        public static String reverse1(String str) {
            return new StringBuilder(str).reverse().toString();
          }
    }
    
    
    展开全文
  • Java 字符串反转

    2020-05-11 23:54:14
    字符串反转 */ public class Reserve { public static void main(String[] args) { // write your code here /** * 字符串反转 */ // 方法一 String str = “abcd”; str = new StringBuilder(str).reverse()....
  • Java 字符串反转问题:给一个字符串,比如 “I love china”, 把字符反转后变成 “china love I”思路:先把字符串从第一个字符与最后一个字符对换,第二个字符和倒数第二个字符对换,这样,我们就把每一个单词位置...
  • java 字符串 反转

    2016-12-14 16:04:00
    java 面试题之一 字符串反转先收集两篇第一遍 第二篇
  • 主要介绍了 Java 字符串反转实现代码的相关资料,需要的朋友可以参考下
  • Java 字符串反转问题:给一个字符串,比如 “I love china”, 把字符反转后变成 “china love I”思路:先把字符串从第一个字符与最后一个字符对换,第二个字符和倒数第二个字符对换,这样,我们就把每一个单词位置...
  • java 字符串反转

    2019-04-10 09:47:04
    方式一: public static void main(String[] args) { String str = "abc"; char[] arr = str.toCharArray(); StringBuilder sb = new StringBuilder();... for(int i=arr.length-1;... char c =...
  • 主要介绍了java 字符串反转的实例详解的相关资料,这里提供实现代码帮助大家学习参考这部分内容,需要的朋友可以参考下
  • 主要介绍了JAVA字符串反转的三种方法,帮助大家更好的理解和学习Java,感兴趣的朋友可以了解下

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,543
精华内容 1,017
关键字:

java字符串反转

java 订阅