字符串String的各种方法

最近气的不行,String的API掌握的不牢,刷起leetcode各种不记得,今天痛定思痛,决定好好恶补一下。
关于String类的基本操作,可分为以下几类:
1、基本操作方法
2、字符串比较
3、字符串与其他数据类型之间的转换
4、字符与字符串的查找
5、字符串的截取与拆分
6、字符串的替换与修改
一、String基本操作方法
1、 获取字符串长度方法length()

格式:int length = str.length();
2、获取字符串中的第i个字符方法charAt(i)

格式:char ch = str.charAt(i); //i为字符串的索引号,可得到字符串任意位置处的字符,保存到字符变量中
3、获取指定位置的字符getChars(4个参数)
格式:char array[] = new char[80]; //先要创建以一个容量足够大的char型数组,数组名为array

str.getChars(indexBegin,indexEnd,array,arrayBegin);
解释一下括号中四个参数的指向意义:
1、indexBegin:需要复制的字符串的开始索引

2、 indexEnd: 需要复制的字符串的结束索引,indexEnd-1

3、array: 前面定义的char型数组的数组名

4、arrayBegin:数组array开始存储的位置索引号
这样我们就可以将字符串中想要的范围内的字符都复制到字符数组中,将字符数组打印输出即可。
与getChars()类似的方法有一个getBytes(),两者使用上基本相同,只是getBytes()方法创建的是byte类型的数组,而byte编码是默认字符集编码,它是用编码表示的字符。
二、字符串比较
1、首先看一下第一种比较大小这类需求中的方法:
(1)不忽略字符串大小写情况下字符串的大小比较方法compareTo(another str)
格式:int result = str1.compareTo(str2);

输出三种比较结果:若该字符串的Unicode值<参数字符串的Unicode值,结果返回一负整数;若若该字符串的Unicode值=参数字符串的Unicode值,结果返回0;若该字符串的Unicode值>参数字符串的Unicode值,结果返回一正整数。
(2) 忽略字符串大小写情况下字符串的大小比较方法compareTOIgnoreCase(another str)

格式:int result = str1.compareToIgnoreCase(str2);

在忽略字符串大小写情况下,返回三种比较结果:输出三种比较结果:若该字符串的Unicode值<参数字符串的Unicode值,结果返回一负整数;若若该字符串的Unicode值=参数字符串的Unicode值,结果返回0;若该字符串的Unicode值>参数字符串的Unicode值,结果返回一正整数。
2、然后看一下第二种判别两种字符串是否相等(相等情况下必须保证二者长度相等)需求中的方法:
(1)不忽略字符串大小写情况下判别字符串相等的方法eaquals(another str)
格式:boolean result = str1.equals(str2);
当且仅当str1和str2的长度相等,且对应位置字符的Unicode编码完全相等,返回true,否则返回false
(2) 忽略字符串大小写情况下判别字符串相等的方法equalsIgnoreCase(another str)
格式:boolean result = str1.equals(str2);

三、字符串与其他数据类型的转换


image.png

四、字符串查找
(1)查找字符出现的位置
1、indexOf()方法

格式:1、str.indexOf(ch);

2、str.indexOf(ch,fromIndex); //包含fromIndex位置

格式1返回指定字符在字符串中第一次出现位置的索引

格式2返回指定索引位置之后第一次出现该字符的索引号
2、lastIndexOf()方法

格式:1、str.lastIndexOf(ch);

2、str.lastIndexOf(ch,fromIndex);
格式1返回指定字符在字符串中最后一次出现位置的索引

格式2返回指定索引位置之前最后一次出现该字符的索引号

(2) 查找字符串出现的位置

1、indexOf()方法

格式:1、str.indexOf(str);

2、str.indexOf(str,fromIndex);

格式1返回指定子字符串在字符串中第一次出现位置的索引

格式2返回指定索引位置之前第一次出现该子字符串的索引号

2、lastIndexOf()方法

格式:1、str.lastIndexOf(str);

2、str.lastIndexOf(str,fromIndex);
格式1返回指定子字符串在字符串中最后一次出现位置的索引

格式2返回指定索引位置之前最后一次出现该子字符串的索引号

五、截取与拆分
(1) 截取方法
1、substring()方法

格式1:String result = str.substring(index);
格式2:String result = str.substring(beginIndex,EndIndex);//实际索引号[beginIndex,EndIndex-1]

结果:截取出范围内的字符串

(2)拆分方法
1、split()方法
格式1 :String strArray[] = str.split(正则表达式);// 拆分的结果保存到字符串数组中

格式2:String strArray[] = str.split(正则表达式,limit);

六、替换或修改
(1)concat()方法合并字符串

格式:String result = str1.concat(str2); //将str1和str2合并

(2) toLowerCase()方法 将字符全部转化为小写

格式: String result = str.toLowerCase();

(3) toUpperCase()方法 将字符全部转化为大写

格式:String result = str.toUpperCase();

(4)replaceAll()、replaceFirst()方法:需要匹配正则表达式

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 原创声明 本文系作者辛苦码字所得,欢迎分享和转载,但请在明显位置注明作者的如下信息:笔名:来碗鸡蛋面简书主页:ht...
    来碗鸡蛋面阅读 673评论 0 3
  • 1.数据存储形式 计算机以二进制的形式存储 (1).原码:数据的二进制形式 10 --> 1010 原码:0000...
    Deathfeeling阅读 368评论 0 3
  • java.lang.String类代表字符串 程序中所有的双引号字符串,都是String类的对象。 (1) 字符...
    yang嗯嗯阅读 473评论 0 0
  • 一、python基本数据类型 python基本数据类型有:数字类型Number、字符串类型String、布尔类型B...
    rr1990阅读 546评论 0 0
  • 作业: 小结 上午: 1.什么是字符串 a.使用单引号或者双引号括起来的字符集就是字符串。 b.引号中单独的符号、...
    Toto_fa49阅读 564评论 0 5