用Java编写函数反转字符串

简介:

如下所示,下面是两种反转字符串的方法。

实践过程中发现,如果是中文字符串,第二种反转方法会输出乱码。

因此,建议首选第一种方法。


/**
 * 反转字符串 演示实例
 * 假设有一个字符串 “ABCDEF”,反转后,输出“FEDCBA”
 */
package com.reverse;


/**
 * @author snowdream
 * 
 * @since 2012.03.05
 *
 */
public class StringReverse {


	/**
	 * 
	 * ReverseString: 利用StringBuffer反转字符串
	 *
	 * @param      str  待反转字符串
	 * @return     String 已反转字符串  
	 */	
	public String ReverseString(String str){
		StringBuffer mstr = new StringBuffer(str);
		
		System.out.println("Reversed String : "+ mstr.reverse().toString());


		return mstr.reverse().toString();
	}
	
	
	/**
	 * 
	 * ReverseString1: 利用字符数组的方法反转字符串
	 *
	 * @param      str  待反转字符串
	 * @return     String 已反转字符串  
	 */	
	public String ReverseString1(String str){
		byte[] mchars = str.getBytes();
		byte temp = 0;
		int length = mchars.length;
		
		for(int i = 0; i < length/2 ;i++){
			temp = mchars[i];
			mchars[i] = mchars[length -1 -i];
			mchars[length -1 -i] = temp;
		}
		
		String mstr = new String(mchars);
		
		System.out.println("Reversed String : "+ mstr);
	
		return mstr;
	}
	
	
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		StringReverse mReverse = new StringReverse();
		
		//String str = "Hello World!";
		String str = "你好 中国!";
		
		mReverse.ReverseString(str);
		
		mReverse.ReverseString1(str);
		
	}


}


相关文章
|
9天前
|
Java
Java 字符串分割split空字符串丢失解决方案
Java 字符串分割split空字符串丢失解决方案
|
1月前
|
JavaScript 前端开发 Java
Java Script中的函数原型是什么
Java Script中的函数原型是什么
11 0
|
1月前
|
算法 Java 程序员
Java检查字符串是否为回文
Java检查字符串是否为回文
|
1月前
|
存储 Java 程序员
记一次synchronized锁字符串引发的坑兼再谈Java字符串
记一次synchronized锁字符串引发的坑兼再谈Java字符串
20 2
|
1月前
|
存储 Java
JAVA字符串与其他类型数据的转换
JAVA字符串与其他类型数据的转换
27 4
|
20天前
|
Java
java 8 数组转字符串并以逗号分隔
java 8 数组转字符串并以逗号分隔
11 0
|
25天前
|
Java 数据库连接 API
Java 学习路线:基础知识、数据类型、条件语句、函数、循环、异常处理、数据结构、面向对象编程、包、文件和 API
Java 是一种广泛使用的、面向对象的编程语言,始于1995年,以其跨平台性、安全性和可靠性著称,应用于从移动设备到数据中心的各种场景。基础概念包括变量(如局部、实例和静态变量)、数据类型(原始和非原始)、条件语句(if、else、switch等)、函数、循环、异常处理、数据结构(如数组、链表)和面向对象编程(类、接口、继承等)。深入学习还包括包、内存管理、集合框架、序列化、网络套接字、泛型、流、JVM、垃圾回收和线程。构建工具如Gradle、Maven和Ant简化了开发流程,Web框架如Spring和Spring Boot支持Web应用开发。ORM工具如JPA、Hibernate处理对象与数
90 3
|
28天前
|
SQL Java
使用java中的String类操作复杂的字符串
使用java中的String类操作复杂的字符串
9 0
|
28天前
|
Java
使用java将字符串写入到指定的文件中
使用java将字符串写入到指定的文件中
11 0