字符串类

举报
静Yu 发表于 2021/11/19 03:11:20 2021/11/19
【摘要】 String类 String类在java.lang包中,使用该类时不需要import语句 String类是最终类,不允许其它类继承并重写它的方法 String类的对象一旦创建,只允许访问,不允许更改 S...

String类

String类在java.lang包中,使用该类时不需要import语句
String类是最终类,不允许其它类继承并重写它的方法
String类的对象一旦创建,只允许访问,不允许更改
String 类的构造方法
String(String original)
• String s=new String(“hello”);
• String s1=new String(s);
String(char[ ] value)
• char a[ ]={‘t’, ‘o’, ‘y’};
• String s=new String(a);
String(char[ ] value,int offset,int count)
• 利用字符数组value的一部分构造字符串对象,
从offset开始共计count个字符
• char[ ] a={‘a’, ‘b’, ‘c’, ‘d’, ‘e’};
• String s=new String(a,2,3);
字符串常量
用一对英文双引号包括的字符序列,称为字符串常量
字符串常量是对象,可以把它的引用赋值给String类的变量
• String s = “Welcome!”;
String类的常用方法
(1)public int length()
返回当前字符串的长度
(2)public boolean equals(String s)
比较两个字符串的内容是否完全相同
(3)public boolean contains(String s)
比较当前字符串是否包含字符串s
(4)public int compareTo(String s)
将当前字符串按字典序与字符串s比较大小,如果当前字符串与s相同,返回0;如果当前字符串大于s,返回正值;否则返回负值
(5)public String concat(String s)
与字符串连接符"+"是等价的
(6)public String substring(int start, int end)
得到当前字符串的子串,这个子串从当前字符串的start开始,截取到end(不包括end)之间的字符序列
(7)public int indexOf(String s)
从当前字符串的头开始检索字符串s,并返回首次出现s的位置,如果没有检索到s,则返回-1
(8)public String[ ] split(String regex)
以regex为分隔符把当前字符串分割成若干个子字符串,以字符串数组的形式返回
(9)public char[ ] toCharArray()
将当前字符串中的所有字符按顺序存放在一个字符数组中
(10)public char charAt(int n)
返回当前字符串中位置n上的字符

StringBuffer类
String类的对象一旦创建,就不能改变Java提供了一个能改变字符串状态的StringBuffer类
StringBuffer类的很多访问性的方法与String类是相同的
StringBuffer类有一些String类没有的方法,主要用来改变StringBuffer类对象的内容

StringBuffer类的构造方法
StringBuffer()
创建的StringBuffer对象的初始容量可以容纳16个字符,实体的容量可以根据情况自动增加
StringBuffer(int size)
创建的StringBuffer对象的初始容量可以容纳size个字符,实体的容量可以根据情况自动增加
StringBuffer(String s)
创建的StringBuffer对象的初始容量为字符串s
的长度+16个字符,实体的容量可以根据情况
自动增加
StringBuffer类的常用方法
(1)public void setCharAt(int index,char ch)
将当前字符串中位置index上的字符替换为字符ch
(2)public StringBuffer insert(int offset, String str)
把字符串str插入到当前字符串的位置offset处
(3)public StringBuffer delete(int start, int end)
将当前字符串中位置start至end-1之间的字符删除
(4)public StringBuffer reverse()
将当前字符串中的字符倒序存放
(5)public StringBuffer replace(int start, int end,
String str)
将当前字符串中位置start至end-1之间的字符替换为str指定的字符串
(6)public StringBuffer append(String s)
将字符串s追加到StringBuffer对象中

StringTokenizer类
构造方法
StringTokenizer(String s)
为字符串s构造一个分析器,使用默认的分隔标记,即空格符(若干个空格被看成一个空格)、换行符、回车符、Tab符等
StringTokenizer(String s,String delim)
为字符串s构造一个分析器,参数delim中的字符的任意排列组合都是分隔标记

•StringTokenizer对象称为字符串分析器
• nextToken()方法可以逐个获取字符串分析器中的语言符号(单词)
• 每获取到一个语言符号,字符串分析器中负责计数的变量的值就自动减一,计数变量的初始值等于字符串中的单词数目(调用countTokens()方法可以得到单词数目)
• 只要计数变量的值大于0,hasMoreTokens()方法返回
true,否则返回false

文章来源: blog.csdn.net,作者:静Yu,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/qq_46285118/article/details/113047468

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

举报
请填写举报理由
0/200