字符串的操作

来源:互联网 发布:马士兵java教程全集 编辑:程序博客网 时间:2024/06/06 07:37

一,String即可以用String str = new String(“abc”);的形式来创建,也可以用String str =”abc”;的形式来创建。
 String str = “abc”创建对象的过程
1 首先在常量池中查找是否存在内容为”abc”的字符串对象
2 如果不存在则在常量池中创建一个”abc”的字符串对象,并让str引用该对象
3 如果存在则直接让str引用该对象
注意:常量池属于类信息的一部分,而类信息反映到JVM内存模型中是对应存在于JVM内存模型的方法区,也就是说这个类信息中的常量池概念是存在于在方法区中。一般这种情况下,”abc”在编译时就被写入字节码中,所以class被加载时,JVM就为”abc”在常量池中分配内存,所以和静态区差不多。 
 String str = new String(“abc”)创建实例的过程
1首先定义一个str的String类型的引用并存放在栈中
2在字符串常量池中查看是否存在内容为”abc”字符串对象 
3若存在则跳过这个步骤,若不存在,则在字符串常量池中创建一个内容为”abc”的字符串对象
4执行new操作,在堆中创建一个指定的对象”abc”,这里堆的对象是字符串常量池“abc”对象的一个拷贝对象
5让str指向堆中“abc”这个对象(也就是存储这个对象的在堆中的地址)

字符串的操作


Java String类
字符串广泛运用在java编程中,在Java中字符串是属于对象的,Java提供了string类来创建和操作字符串.


创建字符串

String name = “我叫陶大宝儿”;

在String类有11中构造方法,这些方法提供不同的参数来初始化字符串,比如提供一个字符串数组参数.
列子如下:>package work;

public class Demo_01 {
public static void main(String[] args) {
char[] A = {‘陶’,’大’,’宝’};
String B = new String(A);
System.out.println(B);
}
}
结果:陶大宝

字符串的长度

用于获取有关对象的信息的方法称为访问器方法。
String 类的一个访问器方法是 length() 方法,它返回字符串对象包含的字符数。

package work;
public class Demo_02 {
public static void main(String[] args) {
String A = “www.taodabao.com”;
int B = A.length();
System.out.println(“长度是”+B);
}
}

链接字符串

String提供了两个字符串链接的方式

String.concat(String2)


package work;
public class Demo_03 {
public static void main(String[] args) {
String string = “陶大宝儿”;
System.out.println(“1:”+string+”是个程序员”);
}
}

创建格式化字符串

printf() 和 format() 方法
String 类使用静态方法 format() 返回一个String 对象而不是 PrintStream 对象。
String 类的静态方法 format() 能用来创建可复用的格式化字符串,而不仅仅是用于一次打印输出。

String方法
更多详情,参看Java String API