本文介绍java的字符串及其编码转换。

String

基本用法

String是常量字符串,正因为是常量使得String对象可以安全的在变量间分享。

例如:

String a = "hello";
a += " world";	// 相当于把a指向a+“ world”得到的常量字符串
String b = a; 	// 共享a指向的常量字符串

构造函数

Unicode与uft-8, gbk等之间编码转换

Java的String是unicode编码,而网络传输一般是带编码的utf-8,gbk格式的字节流。

String与utf-8的编码转换:

String org = "中国happy";
try {
    // unicode to utf-8
    byte[] bytes = org.getBytes( "utf-8" );
    
    // utf-8 to unicode
    String newString = new String(bytes, "utf-8");
} 
catch (UnsupportedEncodingException e) {
}

如果是转换为gbk编码,只要上面的参数改为”gbk”即可。

常用方法

静态方法

static String format(String format, Object... args)
使用指定的格式字符串和参数返回一个格式化字符串。

static String valueOf(char c) 
static String valueOf(char[] data) 
static String valueOf(char[] data, int offset, int count) 
static String valueOf(double d) 

StringBuffer

线程安全的可变字符序列。

StringBuilder

一个可变的字符序列。