精华内容
下载资源
问答
  • 主要为大家详细介绍了java实现字符串反转,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • java实现字符串反转

    2020-08-30 14:26:02
    主要为大家详细介绍了java实现字符串反转,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 主要介绍了 Java 字符串反转实现代码的相关资料,需要的朋友可以参考下
  • 主要介绍了JAVA字符串反转的三种方法,帮助大家更好的理解和学习Java,感兴趣的朋友可以了解下
  • Java中如何将字符串反转

    千次阅读 2021-02-14 11:01:05
    一、Java中如何将字符串反转 1、利用 StringBuffer 或 StringBuilder 的 reverse() 成员方法 代码演示: 运行结果: 2、利用 String 的 toCharArray() 方法先将字符串转化为 char 类型数组,然后使用...

    目录

    一、Java中如何将字符串反转

    1、利用 StringBuffer 或 StringBuilder 的 reverse() 成员方法

    代码演示:

    运行结果:

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

    代码演示:

    运行结果:

    3、利用 String 的 CharAt() 方法取出字符串中的各个字符,再使用StringBuilder进行拼接

    代码演示:

    运行结果:

    4、其他方法


    一、Java中如何将字符串反转

    1、利用 StringBuffer 或 StringBuilder 的 reverse() 成员方法

    代码演示:

    package com.zibo.java.february.second;
    
    public class MyStr {
        public static void main(String[] args) {
            String str = "你好,大哥哥!";
            StringBuilder builder = new StringBuilder(str);
            System.out.println(builder.reverse());
        }
    }

     

    运行结果:

    !哥哥大,好你

     

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

    代码演示:

    package com.zibo.java.february.second;
    
    public class MyStr {
        public static void main(String[] args) {
            String str = "你好,大哥哥!";
            char[] chars = str.toCharArray();
            StringBuilder builder = new StringBuilder();
            for (int i = chars.length-1; i >= 0; i--) {
                builder.append(chars[i]);
            }
            System.out.println(builder.toString());
        }
    }

     

    运行结果:

    !哥哥大,好你

     

    3、利用 String 的 CharAt() 方法取出字符串中的各个字符,再使用StringBuilder进行拼接

    代码演示:

    package com.zibo.java.february.second;
    
    public class MyStr {
        public static void main(String[] args) {
            String str = "你好,大哥哥!";
            StringBuilder builder = new StringBuilder();
            for (int i = str.length()-1; i >= 0; i--) {
                builder.append(str.charAt(i));
            }
            System.out.println(builder.toString());
        }
    }

     

    运行结果:

    !哥哥大,好你

     

    4、其他方法

    其他也有一些方法,比如使用subString结合递归,但这种方法效率应该不是太高,得不偿失,不再做深入探讨;

     

     

     

     

     

     

     

     

    展开全文
  • java字符串反转几种方法总结 主要方法: (1)返回字符串的长度。 package com.cn; public class Test { public static void main(String[] args) { String str="hello world"; System.out.println("字符串...

    java将字符串反转几种方法总结

    主要方法:
    (1)返回字符串的长度。

    package com.cn;
    public class Test {
    	public static void main(String[] args) {
    		String  str="hello world";
    		System.out.println("字符串str的长度为:"+str.length());
    	}
    }
    

    结果:
    在这里插入图片描述
    (2)返回字符串的子字符串

    package com.cn;
    public class Test {
    	public static void main(String[] args) {
    		String  str="hello world";
    		System.out.println("字符串str的长度为:"+str.length());
    		System.out.println("子字符串为:"+str.substring(3));
    		System.out.println("子字符串为:"+str.substring(3,7));
    	}
    }
    

    结果:
    在这里插入图片描述
    (3)字符串转化为字符数组。

    package com.cn.reverse;
    public class Test {
    	public static void main(String[] args) {
    		String s="asfrefg";
    		char[] str = s.toCharArray();  //转化为字符数组
    		for(int i = 0; i <s.length(); i++) {
    			System.out.print(str[i]+" ");
    		}
    	}
    }
    

    结果:
    在这里插入图片描述
    1、递归方法。

    package com.cn.reverse;
    public class Demo1 {
    	public static void main(String[] args) {
    		System.out.println("字符串反转的结果为:"+str.reverse1("abcdef"));
    	}
    }
    class str1{
    	public static String reverse1(String s) {
    		int length = s.length();   //字符串长度
    		if(length <= 1){
    		return s;
    		}
    		String left = s.substring(0, length / 2);  
    		String right = s.substring(length / 2, length);  
    		return reverse1(right) + reverse1(left);
    		}
    }
    

    结果:
    在这里插入图片描述
    2、 通过 charAt(int index)返回char值进行字符串拼接。

    package com.cn.reverse;
    public class Demo2 {
    	public static void main(String[] args) {
    		System.out.println("字符串反转的结果为:"+str2.reverse2("frgsgcde"));
    	}
    }
    class str2{
    	public static String reverse2(String s) {
    		int length = s.length();
    		String reverse = "";
    		for(int i = 0; i < length; i++)
    		reverse = s.charAt(i) + reverse;
    		return reverse;
    		}
    }
    

    结果:
    在这里插入图片描述
    3、把字符串转换成字符数组倒叙拼接然后返回值。

    package com.cn.reverse;
    public class Demo3 {
    	public static void main(String[] args) {
    		System.out.println("字符串反转的结果为:"+str3.reverse3("123dfefvg"));
    	}
    }
    class  str3{
    	public static String reverse3(String s) {
    		char[] array = s.toCharArray();
    		String reverse = "";
    		for(int i = array.length - 1; i >= 0; i--)
    		reverse += array[i];
    		return reverse;
    		}
    }
    

    结果:
    在这里插入图片描述
    4、调用StringBuffer中的reverse方法。

    package com.cn.reverse;
    public class Demo4 {
    	public static void main(String[] args) {
    		System.out.println("字符串反转的结果为:"+str4.reverse4("frhj45a"));	
    	}
    }
    class str4{
    	public static String reverse4(String s) {
    		return new StringBuffer(s).reverse().toString();
    		}
    }
    

    结果:
    在这里插入图片描述
    5、把字符串转换成字符数组首位对调位置。

    package com.cn.reverse;
    public class Demo5 {
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		System.out.println("字符串反转的结果为:"+str5.reverse5("123456"));	
    	}
    }
    class str5{
    	public static String reverse5(String str) {
    		char[] s = str.toCharArray();  //转化为字符数组
    		int n = s.length - 1;
    		int halfLength = n / 2;
    		for(int i = 0; i <= halfLength; i++) {
    		     char temp = s[i];
    		     s[i] = s[n - i];
    		     s[n - i] = temp;
    		}
    		return new String(s);
    		}
    }
    

    结果:
    在这里插入图片描述
    6、

    package com.cn.reverse;
    public class Demo6 {
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		System.out.println("字符串反转的结果为:"+str6.reverse6("frhs5p5"));	
    	}
    }
    class  str6{
    	public static String reverse6(String s) {
    		char[] str = s.toCharArray();  //转化为字符数组
    		int begin = 0;
    		int end = s.length() - 1;   //6
    		while(begin < end) {
    		str[begin] = (char) (str[begin] ^ str[end]);
    		str[end] = (char) (str[begin] ^ str[end]);
    		str[begin] = (char) (str[end] ^ str[begin]);
    		begin++;
    		end--; }
    		return new String(str);
    		}
    }
    

    结果:
    在这里插入图片描述
    7、借助栈的特点:先进后出。

    package com.cn.reverse;
    import java.util.Stack;
    public class Demo7 {
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		System.out.println("字符串反转的结果为:"+str7.reverse7("sfghv4sl"));	
    	}
    }
    class str7{
    	public static String reverse7(String s) {
    		char[] str = s.toCharArray();  //转化为字符数组
    		Stack<Character> stack = new Stack<Character>();
    		for (int i = 0; i < str.length; i++)
    		stack.push(str[i]);
    		String reversed = "";
    		for (int i = 0; i < str.length; i++)
    		reversed += stack.pop();
    		return reversed;
    		}
    }
    

    结果:
    在这里插入图片描述

    
    
    
    展开全文
  • java字符串反转(7种方法)

    千次阅读 2021-02-26 16:40:27
    1、用stringBuffer或者stringBuilder自带的reverse方法 public static String reverseTestOne(String s) { ...2、将字符串拆分为char数组 public static String reverseTestTwo(String s) { char[] charArray = s.

    1、用stringBuffer或者stringBuilder自带的reverse方法

        public static String reverseTestOne(String s) {
            return new StringBuffer(s).reverse().toString();
        }
    

    2、将字符串拆分为char数组

        public static String reverseTestTwo(String s) {
            char[] charArray = s.toCharArray();
            int start = 0, end = charArray.length - 1;
            for (; start < end; start++, end--) {
                charArray[start] ^= charArray[end];//采用异或
                charArray[end] ^= charArray[start];
                charArray[start] ^= charArray[end];
            }
            return new String(charArray);
        }
    

    两数交换除了用异或还能用其他方法,请移步不借助第三变量实现两数交换

    3、stringBuffer倒序拼接

        public static String reverseTestThree(String s) {
            StringBuffer sb = new StringBuffer();
            for (int i = s.length() - 1; i >= 0; i--) {
                sb.append(s.charAt(i));
            }
            return sb.toString();
        }
    

    4、利用栈的先进后出

        public static String reverseTestFour(String s) {
            StringBuffer sb = new StringBuffer();
            Stack stack = new Stack();
            for (int i = 0; i < s.length(); i++) {
                stack.push(s.charAt(i));
            }
            while (!stack.isEmpty()) {
            	//stack会返回栈顶值,并且会把该值删除
                sb.append(stack.pop());
            }
            return sb.toString();
        }
    

    5、二分换位反转

        public static String reverseTestFive(String s) {
            int start = 0;
            int end = s.length() - 1;
            char[] charArray = s.toCharArray();
            while (start < end) {
            	//交换首尾char值
                char c = charArray[end];
                charArray[end] = charArray[start];
                charArray[start] = c;
                start++;
                end--;
            }
            return new String(charArray);
        }
    

    6、切割递归反转

        public static String reverseTestSix(String s) {
            if (s.length() <= 1) {
                return s;
            }
            return reverseTestSix(s.substring(1)) + s.substring(0, 1);
        }
    

    7、二分递归反转

        public static String reverseTestSeven(String s) {
            int length = s.length();
            if (length <= 1) return s;
            String left = s.substring(0, length / 2);
            String right = s.substring(length / 2, length);
            return reverseTestSeven(right) + reverseTestSeven(left);
        }
    

    方法可能不止这么多,欢迎大佬们评论区补充

    展开全文
  • 有一些面试官可能在面试Java基础的时候,让你说一下字符串反转,会手撕代码,常见的是三种方法。 一、使用StringBuilder的reverse()方法 个人觉得这是最简单的一种,调用一下自身的方法就可以完成了。 static ...

    前言

    有一些面试官可能在面试Java基础的时候,让你说一下字符串反转,会手撕代码,常见的是四种方法。

    一、使用StringBuilder的reverse()方法

    个人觉得这是最简单的一种,调用一下自身的方法就可以完成了。

    static String reverseElement1(String element){
        StringBuilder result = new StringBuilder(element);
        return result.reverse().toString();
    }
    

    二、使用字符串数组

    使用字符串数组,实现从尾部开始逐个逆序放入字符串,这样也可以实现字符串的反转。

    static String reverseElement2(String element){
        //String转换成字符数组
        char[] charArray = element.toCharArray();
        //定义一个空字符串
        StringBuilder result = new StringBuilder();
        for (int i = charArray.length - 1; i >= 0; i--){
            result.append(charArray[i]);
        }
        return result.toString();
    }
    

    三、使用String的CharAt方法

    使用String的CharAt方法取出字符串中的各个字符,然后插入到字符串中。调用StringBuilder的insert()方法进行操作。

    static String reverseElement3(String element) {
        StringBuilder result = new StringBuilder();
        int length = element.length();
        for (int i = 0; i < length; i++) {
            result.insert(0, element.charAt(i));
        }
        return result.toString();
    }
    

    四、使用String的CharAt方法

    使用递归的方式实现字符串反转。

    static String reverseElement4(String element) {
            //首先判断一下字符串是不是为空和其长度
            if (element == null || element.length() <= 1) {
                return element;
            } else {
                return reverseElement4(element.substring(1)) + element.charAt(0);
            }
    }
    

    五、Demo地址

    GitHub地址:https://github.com/i-kang/ReverseElement

    展开全文
  • Java字符串反转常用的2种方式

    千次阅读 2020-11-18 21:40:56
    Java字符串反转常用的2种方式 1.利用StringBuilder封装的reverse()方法 2.利用数组进行反转 ①先将字符串转换为char类型的数组 ②对char类型数组进行反转 public class testString { //字符串反转 //利用...
  • java输入一串字符串反转Reverse a String in java is a good coding related interview question. I have seen interviewee trying many ways to reverse a String using different ways. The idea of this post is ...
  • 本文实例讲述了javascript实现字符串反转的方法。分享给大家供大家参考。具体实现方法如下: //变量交换 方法 var a=0,b=1,c=2; a=[b,b=c,c=a][0]; //正文 var array='abcdefgh'; function Reverse(arr){ var arr1...
  • 使用 StringBuilder 或者 stringBuffer 的 reverse() 方法。 示例代码: // StringBuffer reverse StringBuffer stringBuffer = new StringBuffer(); stringBuffer.append("abcdefg");...System.out.println...
  • Java如何将字符串反转

    万次阅读 2019-05-09 00:05:11
    总结一道 Java 面试常见编程题:将 'abc123' 字符串反转你能想到的方法都写下来。  1. 利用 StringBuffer 或 StringBuilder 的 reverse 成员方法: // StringBuffer public static String reverse1(String ...
  • 09 JAVA如何将字符串反转

    千次阅读 多人点赞 2020-07-18 11:48:49
    09 JAVA如何将字符串反转? 答: 1.StringBuilder的reverse()方法,最简单 ```sql public static String reverse4(String s) { return new StringBuffer(s).reverse().toString(); } 2.使用字符串数组,实现从尾部...
  • 更新 参考文章:... Java字符串反转还有2种方法是 public static String reverse1(String str) { return new StringBuffer(str).reverse().toString(); } publ...
  • Java中的字符串反转方法

    万次阅读 2018-08-06 10:42:09
    ·首先介绍一下最简单的,利用Java种的StringBuffer来进行反转。 public class Test{ ... //字符串反转 String string = "hello world"; String reverse = new StringBuffer(string).reverse().t...
  • 主要介绍了使用位运算、值交换等方式反转java字符串,本文通过四种方式给大家讲解,给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
  • Java--字符串反转函数

    千次阅读 2019-08-08 15:12:25
    虽然String和StringBUffer都能操作字符串,但是不属于同一个类,不能直接兼容 StringBuffer()将String类型的str转换为StringBuffer,方便调用reverse()方法。 toString()将StringBuffer类型转换为String类型 2.最...
  • Java实现字符串反转

    2018-04-11 17:36:30
    java.lang.AbstractStringBuilder的reverse()方法 java.lang.StringBuffer线程安全【synchronized实现同步方法】 public static String reverseByJDK(String str) { if (str == null || str.length() ==...
  • 实现java字符串反转的三种方法 1.问题描述:将字符串String=“abcdefg”实现反转变成 “gfedcba”;用java语言实现。 2.解决方法: ①方法一:利用StringBuffer或StringBuilder的reverse方法。 ②方法二:利用String...
  • 写在前面: 我是「扬帆向海」,这个昵称来源于我的名字以及女朋友的名字。我热爱技术、热爱开源、热爱编程。...给定一个字符串,将字符串中指定部分进行反转。 例如:将 “helloabcdworld” 反转为
  • 主要介绍了java 字符串反转的实例详解的相关资料,这里提供实现代码帮助大家学习参考这部分内容,需要的朋友可以参考下
  • Java实验:实现字符串反转和大小写转化 这次是java实验,一个简单的字符串操作,因为Java没有指针感觉代码明显变臃肿了 package Tast; //实现字符串反转和大小写转化 public class Test { public static void...
  • 第一种 (最投机取巧的一种): private static void reverse1() { String s = "abcdefg"; StringBuilder sb = new StringBuilder(); for (int i = s.length()-1; i >=0; i--) { char tm...
  • java字符串反转 最优方案

    千次阅读 2017-03-28 11:09:32
    import java.util.Stack; import com.google.zxing.common.StringUtils; /*  * FileName: StringReverse.java  * Date: 2017年3月28日 上午10:23:21  */ /**  * @date 2017年3月28日 上午10:23:21
  • 提供详细的解释过程、附有源代码测试程序、方便初学者使用、并有解释文档。对每一种方法都有详细的说明。对各个方法都能理解。
  • 使用 StringBuilder 或者 stringBuffer 的 reverse() 方法。 示例代码: // StringBuffer reverse StringBuffer stringBuffer = new StringBuffer();...stringBuffer.append("abcdefg");...System.out.println...
  • 主要介绍了将一个字符串进行反转或者字符串中指定部分进行反转的方法,大家参考使用吧
  • 7 种将字符串反转Java 方法

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 60,240
精华内容 24,096
关键字:

java把字符串反转

java 订阅