“这是我参与8月更文挑战的第4天,活动详情查看: 8月更文挑战”
字符串的概述和特点
引入一句官方对String的介绍String 类代表字符串。Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现。
String类在java.lang下,因为系统会自动为我们导入java.lang包,因此我们在使用String创建字符串时不需要自己导包。
知道了String类是干什么的,那它有什么特点呢?来看下面
- String对象是常量,创建后不可以更改。(字符串缓冲区支持可变的字符串,使用的是StringBuffer类)
- 正是因为String对象不可变,所以支持共享。
- 字符串效果上相当于char[]字符数组,但是底层原理是byte[]字节数组。
字符串的构造方法和直接创建
查看API文档你可以发现,String类有11中构造方法,是不是脑瓜子嗡嗡的。但是不要怕,我们只需要记住“3+1”就可以了。 (“3+1”就是3种构造方法和一种直接创建。)
三种构造方法:
String() 初始化一个新创建的 String 对象,使其表示一个空字符序列。
String(char[] value) 分配一个新的 String,使其表示字符数组参数中当前包含的字符序列。
String(byte[] bytes) 通过使用平台的默认字符集解码指定的 byte 数组,构造一个新的 String。
来看具体例子方便大家理解:
//创建空字符串
String str1 = new String();
System.out.println(str1);
//通过字符数组创建字符串
char[] charArray = new char[]{'A','B','C'};
String str2 =new String(charArray);
System.out.println(str2);
//通过字节数组创建字符串
byte[] byteArray = new byte[]{65,66,67};
String str3 = new String(byteArray);
System.out.println(str3);
一种直接创建: 通过双引号来直接创建。
String str4 = "ABC";
虽然我们没有使用new关键字,但是实际上JVM已经帮我们new了,所以这样直接创建出来的字符串仍然是String类的对象。
以上就是java中String类的一些入门知识,下期我们来讲String常量池。让你更加深入了解String类。好了,这期就到这里,以上内容如有错误,欢迎掘友们留言指正。