String的使用
1.String的使用
String s1 = “abc”;//字面量的定义方式
String s2 = “abc”;
System.out.println(s1==s2)//true,s1、s2指向同一个地址
1. String声明为final的,不可被继承
2. String类实现了Serializable接口:表示字符串是支持序列化的,
实现了Comparable接口:表示String可以比较大小
3. String内部定义了final char[] value用于存储字符串数据
4. String:代表不可变的字符序列(不可变性)
5. 通过字面量的方式(区别于new的方式)给一个字符串赋值,此时的字符串声明在字符串常量池中。
6. 字符串常量池是不会存储相同内容的字符串的。
2. String常用方法
3. String与基本数据类型的转换
4. String与char[]的转换
String转char[]:toCharArray()
char[]转String:调用String构造器
5. String与字节数组的转换
@Test public void test2() throws UnsupportedEncodingException { //String转byte[],调用getBytes() String str = "hello中国"; byte[] b1 = str.getBytes();//使用默认字符集,进行转换 System.out.println(Arrays.toString(b1)); //使用指定字符集进行编码 byte[] b2 = str.getBytes("GBK");////使用GBK字符集,进行转换 System.out.println(Arrays.toString(b2)); //byte[]转String,调用String构造器 byte[] b3 = new byte[]{104, 101, 108, 108, 111, -42, -48, -71, -6}; System.out.println(new String(b3,"gbk")); }