String类字符串的解析
一、前言
在java中,和C语言一样,也有关于字符串的定义,并且有他自己特有的功能,下面我们
一起来学习一下。
二、String类概述
string在软件包java.lang下,所以不需要导包。
三、字符串的特点
字符串不可变,他们的值在创建之后不能被改变。
虽然String的值的不可变的,但是他们可以被共享。共享就是其他成员也可以拥有这个值,
字符串效果相当于数组(char[]),但是底层原理是字节数组(byte[])
jdk8以前是字符数组,jdk9以后是字节数组。
四、String 构造方法
public String() //创建一个空白字符串对象,不含有任何内容。
public String(char[] ch)//根据字符数组的内容来创建字符对象。
public String (byte[] b)//根据字节数组的内容来创建字节对象。
String s=“abc” //字节赋值的方式创建对象,内容就是abc。
图示:
代码演示:
public class StringDemo { public static void main(String[] args) { String s1=new String();//创建空的字符串,其中不包括任何内容 System.out.println("s1:"+s1); char[]chs={'a','b','c'}; String s2=new String(chs);//给chs创建对象 System.out.println("chs:"+s2);//输出ch:abc byte[]bys={97,98,99}; String s3=new String(bys); System.out.println("bys:"+s3);//输出bys:abc,他会 转化成对应的Ascll码值 String s4="abc"; System.out.println("s4:"+s4);//输出s4:abc } }
public class StringDemo { public static void main(String[] args) { String s1=new String();//创建空的字符串,其中不包括任何内容 System.out.println("s1:"+s1); char[]chs={'a','b','c'}; String s2=new String(chs);//给chs创建对象 System.out.println("chs:"+s2);//输出ch:abc byte[]bys={97,98,99}; String s3=new String(bys); System.out.println("bys:"+s3);//输出bys:abc,他会 转化成对应的Ascll码值 String s4="abc"; System.out.println("s4:"+s4);//输出s4:abc } }