字符串是字符的序列,它是组织字符的基本的数据结构Java将字符串
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
字符串是字符的序列,它是组织字符的基本的数 据结构。Java将字符串当作对象来处理,它提供 了一系列的方法对整个字符串进行操作,使得字 符串的处理更加容易和规范。在Java中,提供了 各种处理字符串的方法。
Java 语 言 中 的 包 java.lang 中 封 装 了 final 类 String和StringBuffer,其中类String对象是字 符串常量,建立后不能改变。而类StringBuffer 对象类似于一个字符缓冲区,建立后可以修改。
System.out.println("s = "+ s ); System.out.println("s1 = "+ s1); System.out.println("s2 = "+ s2); System.out.println("s3 = "+ s3); System.out.println("s4 = "+ s4); System.out.println("s5 = "+ s5); System.out.println("s6 = "+ s6); System.out.println("s7 = "+ s7); } }
程序运行结果为:
s = Hello!
s1 =
s2 = Hello! s3 = 欢迎 s4 = 设计 s5 = Java s6 = 程序设计 s7 = J
6.1.2 类String 的常用方法
类String中提供的访问String字符串的方法很多,大体 上可分为类转换、子字符串、比较、修改等几类。
String s = "Hello World. ";
由于每个字符串常量对应一个String类的对象,所以对
一个字符串常量可以直接调用类String中提供的方法。
例如:
int len = "Hello World!".length();
将返回字符串的长度12,字符串的长度即字符串中 字符的个数。
String(byte ascii[],int hiByte,int startIndex,int numChars) 用字节数组ascii创建一个字符串对象。其参数的意义同上。
由于在Internet上通常使用的字符都为8位的ASCII 码 , Java 提 供 了 从 字 节 数 组 来 初 始 化 字 符 串 的 方 法 , 并且用hiByte来指定每个字符的高位字节,对ASCII 码 来 说 , hiByte 应 为 0 , 对 于 其 他 非 拉 丁 字 符 集 , hiByte的值应该非0。
【例6.1】类String构造方法的使用。
public class StringConstructors{ public static void main(String args[]){ String s,s1,s2,s3,s4,s5,s6,s7; byte byteArray[] = {(byte)'J',(byte)'a',(byte)'v',(byte)'a'}; Char charArray[] = {'程','序','设','计'}; StringBuffer sb = new StringBuffer("欢迎");; s = new String("Hello!"); s1 = new String(); s2 = new String(s); s3 = new String(sb); s4 = new String(charArray,2,2); s5 = new String(byteArray,0); s6 = new String(charArray); s7 = new String(byteArray,0,0,1);
通过类String提供的构造方法,可以生成一个空字 符串(不包含任何字符的字符串),也可以由字符 数组或字节数组来生成一个字符串对象。缺省的构 造方法不需要任何参数,它生成一个空字符串。例 如:
String s = new String();
其他创建String对象的构造方法有:
String(String value)用已知串value创建一个字符串对象。 String(char chars[])用字符数组chars创建一个字符串对象。
String(char chars[],int startIndex,int numChars)用字符数 组chars的startIndex位置开始的numChats个字符,创建一 个字符串对象。
String(byte ascii[],int hiByte)用字节数组ascii创建一个字符 串对象,Unicode字符的高位字节为hiByte,通常应该为0。
串的值是否相等,不同的是后者忽略字母的大小写。 例如:
System.out.println("abc".equals("abc"));
System.out.println("abc".equalsIgnoreCase("ABC"));
注意:它们与运算符“==”实现的比较是不同的。 运算符“==”比较两个字符串对象是否引用同一个 实例对象,而equals()和equalsIgnoreCase()则比较 两个字符串中对应的每个字符是否相同。例如:
1.类String字符串的比较 类String中提供了一些方法,用来进行字符串的比较。 (1)boolean equals(Object anObject)和
equalsIgnoreCase(String anotherString) 方法equals()和equalsIgnoreCase()用来比较两个字符
6.1 类String字符串
ຫໍສະໝຸດ Baidu
6.1.1 类String字符串的定义 String类是字符串常量类,String对象建立后不能修改。
以前使用的每个字符串常量(用双引号括起来的一串字 符)实际上都是String对象,如字符串“Java”在编译 后即成为String对象。因此,可以用字符串常量直接初 始化一个String对象。例如:
Java 语 言 中 的 包 java.lang 中 封 装 了 final 类 String和StringBuffer,其中类String对象是字 符串常量,建立后不能改变。而类StringBuffer 对象类似于一个字符缓冲区,建立后可以修改。
System.out.println("s = "+ s ); System.out.println("s1 = "+ s1); System.out.println("s2 = "+ s2); System.out.println("s3 = "+ s3); System.out.println("s4 = "+ s4); System.out.println("s5 = "+ s5); System.out.println("s6 = "+ s6); System.out.println("s7 = "+ s7); } }
程序运行结果为:
s = Hello!
s1 =
s2 = Hello! s3 = 欢迎 s4 = 设计 s5 = Java s6 = 程序设计 s7 = J
6.1.2 类String 的常用方法
类String中提供的访问String字符串的方法很多,大体 上可分为类转换、子字符串、比较、修改等几类。
String s = "Hello World. ";
由于每个字符串常量对应一个String类的对象,所以对
一个字符串常量可以直接调用类String中提供的方法。
例如:
int len = "Hello World!".length();
将返回字符串的长度12,字符串的长度即字符串中 字符的个数。
String(byte ascii[],int hiByte,int startIndex,int numChars) 用字节数组ascii创建一个字符串对象。其参数的意义同上。
由于在Internet上通常使用的字符都为8位的ASCII 码 , Java 提 供 了 从 字 节 数 组 来 初 始 化 字 符 串 的 方 法 , 并且用hiByte来指定每个字符的高位字节,对ASCII 码 来 说 , hiByte 应 为 0 , 对 于 其 他 非 拉 丁 字 符 集 , hiByte的值应该非0。
【例6.1】类String构造方法的使用。
public class StringConstructors{ public static void main(String args[]){ String s,s1,s2,s3,s4,s5,s6,s7; byte byteArray[] = {(byte)'J',(byte)'a',(byte)'v',(byte)'a'}; Char charArray[] = {'程','序','设','计'}; StringBuffer sb = new StringBuffer("欢迎");; s = new String("Hello!"); s1 = new String(); s2 = new String(s); s3 = new String(sb); s4 = new String(charArray,2,2); s5 = new String(byteArray,0); s6 = new String(charArray); s7 = new String(byteArray,0,0,1);
通过类String提供的构造方法,可以生成一个空字 符串(不包含任何字符的字符串),也可以由字符 数组或字节数组来生成一个字符串对象。缺省的构 造方法不需要任何参数,它生成一个空字符串。例 如:
String s = new String();
其他创建String对象的构造方法有:
String(String value)用已知串value创建一个字符串对象。 String(char chars[])用字符数组chars创建一个字符串对象。
String(char chars[],int startIndex,int numChars)用字符数 组chars的startIndex位置开始的numChats个字符,创建一 个字符串对象。
String(byte ascii[],int hiByte)用字节数组ascii创建一个字符 串对象,Unicode字符的高位字节为hiByte,通常应该为0。
串的值是否相等,不同的是后者忽略字母的大小写。 例如:
System.out.println("abc".equals("abc"));
System.out.println("abc".equalsIgnoreCase("ABC"));
注意:它们与运算符“==”实现的比较是不同的。 运算符“==”比较两个字符串对象是否引用同一个 实例对象,而equals()和equalsIgnoreCase()则比较 两个字符串中对应的每个字符是否相同。例如:
1.类String字符串的比较 类String中提供了一些方法,用来进行字符串的比较。 (1)boolean equals(Object anObject)和
equalsIgnoreCase(String anotherString) 方法equals()和equalsIgnoreCase()用来比较两个字符
6.1 类String字符串
ຫໍສະໝຸດ Baidu
6.1.1 类String字符串的定义 String类是字符串常量类,String对象建立后不能修改。
以前使用的每个字符串常量(用双引号括起来的一串字 符)实际上都是String对象,如字符串“Java”在编译 后即成为String对象。因此,可以用字符串常量直接初 始化一个String对象。例如: