java实现字符串反转
2014-08-17 11:18
411 查看
1、java编码方式
参考1:/article/10831831.html
java采用Unicode字符集,内存中采用UTF-16的编码方式:一个字符占2个字节,一个普通汉字占2个字节,但是超大编码的字符集中的字符占4个字节。
即:
UTF-16的编码形式
byte 是字节,字符串在网络传输或存储前需要转换为byte数组。在从网络接收或从存储设备读取后需要将byte数组转换成String。String是字符串,可以看成是由char组成的数组。String 和 char 为内存形式,byte是网络传输或存储的序列化形式。 String序列化成byte数组或反序列化时需要选择正确的编码方式。如果编码方式不正确,就会得到一些0x3F的值。常用的字符编码方式有ISO8859_1、GB2312、GBK、UTF-8/UTF-16/UTF-32。
2、字符串反转
参考:http://www.jb51.net/article/37399.htm
反转方法StringBuilder的父类中,源代码如下:
我的实现:
/**
* 创建时间:2014年8月15日 下午9:44:51
* 项目名称:Test
* @author Cao Yanfeng
* @since JDK 1.6.0_21
* 类说明:
*/
public class AccuracyTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String string="caoyanfeng曹艳丰北京大学
参考1:/article/10831831.html
java采用Unicode字符集,内存中采用UTF-16的编码方式:一个字符占2个字节,一个普通汉字占2个字节,但是超大编码的字符集中的字符占4个字节。
即:
UTF-16的编码形式
类别 | 字符个数 | 字节个数 | bit位 |
字符 | 1 | 2 | 16 |
普通汉字 | 1 | 2 | 16 |
超大字符集(生僻汉字等) | 2 | 4 | 32 |
2、字符串反转
参考:http://www.jb51.net/article/37399.htm
反转方法StringBuilder的父类中,源代码如下:
public AbstractStringBuilder reverse() { boolean hasSurrogate = false; int n = count - 1; for (int j = (n-1) >> 1; j >= 0; --j) { char temp = value[j]; char temp2 = value[n - j]; if (!hasSurrogate) { hasSurrogate = (temp >= Character.MIN_SURROGATE && temp <= Character.MAX_SURROGATE) || (temp2 >= Character.MIN_SURROGATE && temp2 <= Character.MAX_SURROGATE); } value[j] = temp2; value[n - j] = temp; } if (hasSurrogate) { // Reverse back all valid surrogate pairs for (int i = 0; i < count - 1; i++) { char c2 = value[i]; if (Character.isLowSurrogate(c2)) { char c1 = value[i + 1]; if (Character.isHighSurrogate(c1)) { value[i++] = c1; value[i] = c2; } } } } return this; }*******************************************************************************************************************
我的实现:
/**
* 创建时间:2014年8月15日 下午9:44:51
* 项目名称:Test
* @author Cao Yanfeng
* @since JDK 1.6.0_21
* 类说明:
*/
public class AccuracyTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String string="caoyanfeng曹艳丰北京大学
相关文章推荐
- 怎样把字符串反转? Java实现
- JAVA实现字符串反转,借助字符数组实现
- Java实现字符串反转
- 数据结构之数组和字符串的反转java实现
- java实现字符串中的单词分别反转,如how are you ?==>ohw rae oyu ?
- Java 字符串反转实现
- java实现字符串反转
- java字符串操作:如何实现字符串的反转及替换?
- Java实现字符串中的单词反转
- Java实现字符串中的连续数字的反转
- java中实现字符串的反转
- 字符串反转 -- java实现
- java实现字符串反转
- 字符串反转(java实现)
- Java字符串反转算法实现
- java如何实现字符串的反转及替换
- java实现字符串反转(二)
- Java实现字符串反转
- Java实现字符串的反转
- 【LeetCode-面试算法经典-Java实现】【151-Reverse Words in a String(反转字符串中的单词)】