`

JAVA中的字符串反转(转载)

阅读更多
操作字符串,是JAVA中的一项常用的而且也是一种基本的能力。对于反转字符串这一看似简单的操作,里面体现了好多的字符串的应用,下面结合自己的想法与网上的方法,总结反转字符串基本上有以下一些方法。以方法表现的性能从高到底列出:

第一种方法:

public static String getRevString(String str){

        String a = str;

        char[] c = a.toCharArray();

        int i=a.length();

        i--;

        char temp;

        for (int count=0;count<i;count++,i-- )

        {

        temp=c[count];

           c[count]=c[i];

           c[i]=temp;

        }

        return new String(c,0,a.length());

     }

第二种方法:

public static String getRevString(String str){

         StringBuffer sb = new StringBuffer(str);

         String  returnStr = sb.reverse().toString();

         return returnStr;

}

第三种方法:

public static String getRevString(String str){

        char[] temp = str.toCharArray();

        int length = temp.length;

        char[] recive = new char[length];

        for(int i=length;i>0;i--){

            recive[length-i] =  temp[i-1];

        }

        String temp2 = new String(recive);

        return temp2;

}

第四种方法:

public static String getRevString(String s){

        StringBuffer sb = new StringBuffer();

         for ( int i = s.length() - 1; i >= 0; i--) {

  

           sb .append(s.charAt(i));

        }

        return sb.toString();

      }

最后一种方法是用递归的方法实现的:

其方法体如下:

public static String getRevString(String strTest){

        if(strTest.length() == 1)

        return strTest;



        String strResult = strTest.substring(strTest.length() -1,strTest.length());

        strResult += getRevString (strTest.substring(0,strTest.length() -1));

        return strResult;

     }

这种递归的方法当要反转的字符串少时,不会出现错误,但当要反转的字转串比较多时,这种方法就会报堆栈溢出错误,还没搞清是怎么回事.这种方法的性能也不是太好.
转载自:http://wusaihe.blog.163.com/blog/static/7239597120104129531235/
分享到:
评论
2 楼 liubey 2010-07-06  
public static String revString2(String str) {
		char[] temp = str.toCharArray();
		int length = temp.length;
		char[] rev = new char[length];
		
		for(int i=0;i<length;i++) {
			rev[i] = temp[length-i-1];
		}
		return new String(rev);
	}
1 楼 liubey 2010-07-06  
不错,第二种最简单,但是估计也是最不出彩的一种,第三种不错

相关推荐

    96.java字符串反转案例.zip

    96.java字符串反转案例.zip96.java字符串反转案例.zip96.java字符串反转案例.zip96.java字符串反转案例.zip96.java字符串反转案例.zip96.java字符串反转案例.zip96.java字符串反转案例.zip96.java字符串反转案例.zip...

    java 字符串反转

    在本篇中,我们将深入探讨如何在Java中实现字符串反转,特别是在处理多个字符串时。 首先,让我们从基本的字符串反转方法开始。Java提供了`StringBuilder`或`StringBuffer`类,它们是可变的字符序列,非常适合进行...

    84.java中字符串的特点.zip

    84.java中字符串的特点.zip84.java中字符串的特点.zip84.java中字符串的特点.zip84.java中字符串的特点.zip84.java中字符串的特点.zip84.java中字符串的特点.zip84.java中字符串的特点.zip84.java中字符串的特点.zip...

    java 字符串中文判断

    在Java编程语言中,处理字符串是非常常见的操作,尤其是在涉及到文本分析和处理的场景。本文将深入探讨如何在Java中进行中文...在Java中处理字符串,特别是涉及到特殊字符集如中文时,对字符编码的理解是必不可少的。

    Java 中的字符串反转.docx

    在 Java 编程中,字符串反转是一个常见的操作,特别是在处理文本数据时。本文将深入探讨在 Java 中如何反转字符串,并提供几种不同的实现方法。首先,我们需要了解 Java 中字符串的特性。 1. **字符串不可变性**:...

    java 字符串转16进制 16进制转字符串 将两个ASCII字符合成一个字节;

    java 字符串转16进制 16进制转字符串 将两个ASCII字符合成一个字节; java 字符串转16进制 16进制转字符串 将两个ASCII字符合成一个字节; java 字符串转16进制 16进制转字符串 将两个ASCII字符合成一个字节; java ...

    java实现字符串反转案例

    `StringBuilder`是Java中用于构建字符串的类,它允许我们在不创建新对象的情况下进行字符串操作,如插入、删除和替换。在反转字符串的场景下,`StringBuilder`的`reverse()`方法可以直接对字符串进行反转操作。以下...

    java 字符串工具类 java 字符串工具类

    java 字符串工具类 java 字符串工具类java 字符串工具类 java 字符串工具类java 字符串工具类 java 字符串工具类java 字符串工具类 java 字符串工具类java 字符串工具类 java 字符串工具类java 字符串工具类 java ...

    java判断字符串是否是json或json数组.txt

    java判断字符串是否是json或json数组; 简单小方法,很实用;简单实用的方法;亲测可用;嗯嗯嗯呃呃呃呃呃呃呃

    java中字符串的操作汇总

    ### Java中字符串的操作汇总 在Java编程语言中,字符串(`String`)是极其重要的一个概念,被广泛应用于各种场景之中。为了更好地理解和运用Java语言,掌握字符串的各种操作方法至关重要。下面将详细介绍Java中字符...

    字符串反转函数

    字符串反转函数是编程中常见的一种操作,特别是在面试和笔试中经常被用来测试候选人的基本编程技巧和理解能力。本文将详细讲解如何使用堆栈来实现一个可以处理中文和英文混合的字符串反转函数。 首先,我们需要了解...

    java 分解字符串

    下面我们将深入探讨如何在Java中分解字符串以及其相关知识点。 1. `split()`方法 `split()`方法是`String`类的一个实例方法,它接受一个正则表达式作为参数,并根据这个正则表达式将字符串分割成一个字符串数组。...

    java 创建字符串类

    - **不可变性**:Java中的`String`对象是不可变的,这意味着一旦创建了`String`对象,就不能更改它的值。这是因为字符串被存储在常量池中,修改字符串会生成新的`String`对象。 - **构造方法**:可以通过传递字符...

    java字符串处理取出括号内的字符串

    首先,我们要明白Java中的字符串是`String`类的对象,它提供了丰富的API用于字符串的处理。例如,我们可以使用`substring()`方法来截取字符串的一部分,但这并不适用于提取括号内的内容,因为我们需要识别开括号和闭...

    ZIFUCHUAN.zip_字符串反转

    在Java中: ```java public String reverseString(String s) { Stack&lt;Character&gt; stack = new Stack(); for (char c : s.toCharArray()) { stack.push(c); } StringBuilder reversed = new StringBuilder(); ...

    JAVA日期与字符串的转换

    ### JAVA日期与字符串的转换 在Java编程中,经常需要将日期对象转化为字符串形式以便于存储或显示,或者反过来将字符串转化成日期...通过以上内容的学习,相信读者已经掌握了Java中日期与字符串相互转换的核心技巧。

    JAVA字符串反转的三种方法

    本文将详细介绍三种在Java中实现字符串反转的方法。 方法一:使用StringBuilder类 StringBuilder是Java中的一个类,它提供了动态构建字符串的能力,支持字符串的修改。因此,反转字符串的一个有效方法是通过...

    Java 实例 - 压栈出栈的方法实现字符串反转源代码-详细教程.zip

    在Java编程中,字符串反转是一个常见的操作,可以用于多种应用场景,如数据处理、算法实现等。本教程将深入探讨如何利用压栈出栈的方法来实现字符串的反转,并提供详细的源代码解析。这种方法基于数据结构中的栈...

    Java 字符串反转实现代码

    Java 字符串反转实现代码是 Java 编程语言中的一种常见操作,字符串反转是指将字符串中的字符顺序颠倒,例如,将字符串 "I love china" 反转后变成 "china love I"。下面我们将详细介绍 Java 字符串反转实现代码的...

Global site tag (gtag.js) - Google Analytics