Java常用类 - 字符串

Java主要的就是它的API,也就是我们所说的JDK,里面包含各式各样的现成类,助你快速开发。下面我们就说下重要的JAVA常用类。

一、字符串类(String、StringBuilder、StringBuffer)

字符串的重要性想必接触过编程的同学们都大概知道了吧,字符串在整个编程中是使用较为频繁的数据结构,它能够表示很多类型的数值,是编程中不可缺少的常用类。

① String类

JAVA语言字符串常量的类型 java常用字符串_编程语言


String对象的创建

String str = "hello";
//本质上this.value = new char[0];
String  s1 = new String();
//this.value = original.value;
String  s2 = new String(String original);
//this.value = Arrays.copyOf(value, value.length);
String  s3 = new String(char[] a);
String  s4 = new String(char[] a,int startIndex,int count);

字符串对象的储存过程图解

JAVA语言字符串常量的类型 java常用字符串_JAVA语言字符串常量的类型_02


JAVA语言字符串常量的类型 java常用字符串_赋值_03


JAVA语言字符串常量的类型 java常用字符串_编程语言_04


1.String声明为final的,不可被继承

2.String实现了Serializable接口:表示字符串是支持序列化的。

实现了Comparable接口:表示String可以比较大小

3.String内部定义了final char[] value用于存储字符串数据

4.String:代表不可变的字符序列。简称:不可变性。

体现:
1.当对字符串重新赋值时,需要重写指定内存区域赋值,不能使用原有的value进行赋值。
2. 当对现有的字符串进行连接操作时,也需要重新指定内存区域赋值,不能使用原有的value进行赋值。
3. 当调用String的replace()方法修改指定字符或字符串时,也需要重新指定内存区域赋值,不能使用原有的value进行赋值。
5.通过字面量的方式(区别于new)给一个字符串赋值,此时的字符串值声明在字符串常量池中。
6.字符串常量池中是不会存储相同内容的字符串的。

String常用方法

JAVA语言字符串常量的类型 java常用字符串_赋值_05


JAVA语言字符串常量的类型 java常用字符串_java_06


JAVA语言字符串常量的类型 java常用字符串_赋值_07


String与基本数据类型转换

JAVA语言字符串常量的类型 java常用字符串_编程语言_08


String与字符数组转换

JAVA语言字符串常量的类型 java常用字符串_java_09


String与字节数组转换

JAVA语言字符串常量的类型 java常用字符串_字符串_10


② StringBuffer类

JAVA语言字符串常量的类型 java常用字符串_赋值_11


JAVA语言字符串常量的类型 java常用字符串_JAVA语言字符串常量的类型_12


JAVA语言字符串常量的类型 java常用字符串_编程语言_13


③ StringBuilder类

JAVA语言字符串常量的类型 java常用字符串_java_14


下面有一个面试题,也是面试中过多次数出现的问题。

JAVA语言字符串常量的类型 java常用字符串_java_15

上面就是Java常用类中的字符串类了,掌握以上的API,会使你在使用字符串的过程中减少冗余代码,快速完成想要的功能。