关于String类的一些理解

本文介绍了Java中String类的基础知识,包括如何构造String对象,以及length(),equals(),startsWith(),endsWith(),compareTo()等常用方法的用法和示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1.说明

2.构造String对象

3.String类的常用方法

1. public int length()

2.public boolean equals(String s)

3.public boolean starts With(String s)和 public boolean ends With(String s)

4.public int comparcTo(String s)


1.说明

在程序设计中经常涉及处理和字符序列有关的算法,为此Java专门提供了用来处理字符序列的String类。String 类在java. lang包中,由于java.lang包中的类被默认引入,所以程序可以直接使用Striag类。需要注意的是Java把String类定义为 final类,因此用户不能扩展String类,即String类不可以有子类。

2.构造String对象

可以使用String类声明对象并创建对象,例如:

String s=new String("I love you");

String t=new String("I love you");

在这里需要说明一下,尽管s和t的实体相同,都是字符序列I love you,但二者的引用是不同的,(即表达式s==t的值是false,它们的地址不同,new运算符如它的名字一样,每次都要开辟新天地)

(2)String类还有两个较常用的构造方法。
(1)String(char a[]):用一个字符数组a创建一个String对象(即用数组单元中的字符构造String对象的实体)。例如:
char a[] =('J','a','v','a'};
String s = new String(a);
上述过程的效果相当于
String s = new String("Java")
(2)String(char a[],int startIndex,int count):提取字符数组a中的一部分字符创建一个String对象,参数startIndex和count分别指定在a中提取字符的起始位置和从该位置开始截取的字符个数。例如:
char a[]={'零’,'壹‘,’贰少叁:,‘肆',‘伍’,‘陆',‘柒’,捌‘,‘玖”};
String s = new String(a,2,4);
其效果相当于
String s = new String("贰叁肆伍");

3.String类的常用方法

1. public int length()


String类中的length()方法用来获取一个String对象的字符序列的长度。

例如:
String china="1945年抗战胜利”;
int nl,n2;
nl = china.length();
n2=“小鸟fly".length();
那么nl的值是9,n2的值是5。


2.public boolean equals(String s)


String对象调用equals(String s)方法化较当前String对象的字符序列是否与参数s指定的String对象的字符序列相回,

例如:
String tom = new String("天道酬勤");

String boy = new String("知心朋友");

String jerry = new String("天道酬勤");
那么 tom.equals(boy)的值是 false,tom.equals(jerry)的值是true。
注:关系表达式“tom==jerry”的值是 false,因为String对象tom、jerry中存放的是引用,String 对象调用 public boolean equalslgnoreCase(String s)比较当前St对象的字符序列与参数指定的String 对象 s的字符序列是否相同,比较时忽略大小写。

3.public boolean starts With(String s)和 public boolean ends With(String s)

String 对象调用startsWith(Strings)方法,判断当前String对象的字符序列前缀是否为
参数指定的String对象s的字符序列。

例如:
String tom=“天气预报,阴有小雨",jerry =“比赛结果,中国队赢得胜利”;
那么tom.startsWith(“天气")的值是true,jerry.startsWith(“天气")的值是false。
使用endsWith(String s)方法判断一个String 对象的字符序列后缀是否为String对象s的字符序列,例如tom,endsWith("大雨")的值是false,jerry.endsWith(“胜利")的值是true。

4.public int comparcTo(String s)

String 对象调用compareTo(String s)方法,按字典序与参数指定的String对象s的字符序列较大小。如果当前String对象的字符序列与s的相同,该方法返回0;如果大于s的字符序列,该方法返回正值;如果小于s的字符序列,该方法返回负值例如,字符a在Unicode表中的排序位置是97、字符b是98,那么对于
String str ="abcde";
str. compareTo("boy")小于 0,str. compareTo("aba")大于0,str.compareTo("abcde")等于0。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值