String 类当中的常用的方法

一,构造方法

在这里插入图片描述

总结:这里的方法我们可以看到,String 类型的构造方法可以让一个byte数组,或者一个char 数组转化为一个字符串,重点介绍String构造方法关于byte数组或者char数组转换为String字符串的构造方法

1.1 byte[] 数组转换为字符串

介绍:这个方法可以有4个参数,第一个就传入的数组名,第二个就是可以指定下标,从这个下标开始转为字符串,第三个就是长度,从转换下标开始转换为字符串的长度,第四个就是指定用什么编码来转化,
转换下标:如果不指定就默认转换整个数组
长度:是基于转换下标存在的基础上来规定长度的,没有下标就不谈长度,
指定编码:这里填写的时候需要一个Charset.forName();的方法,来填入,下面给出例子

byte[] bytes = {65, 66, 67, 68};
        String s = new String(bytes, 0, 2, Charset.defaultCharset());
        String s1=new String(bytes,Charset.forName("UTF-8"));
        System.out.println(s);

介绍:第一个是用的默认编码,就是当前JVM设置的编码格式,我们一般都是UTF-8
第二个我们用的是GBK,编码,通过forName方法来使用

.
.

但是只规定了编码,没有规定解码,通常会出错,会出现乱码的情况,所以最后一项我们一般不填写编码的类型,而默认使用默认编码
如果你设置得编码和解码不同,一般情况下运行结果的中文会出现乱码

同理,我们可以使用char类型来转换字符串,和byte类型的数组的操作是一样的

二,常用的方法

2.1 charAt 方法 ——返回一个指定处索引的值—— (实例方法)

在这里插入图片描述
示例:

String s1="123456789";

 System.out.println( s1.charAt(2));

解释:该方法返回一个char类型的值,charAt方法里面填写的索引是从0开始的,在这个例子中字符串1的下标是0

2.2 codePointAt ——返回该索引下的值的Unicode的数字表示——(实例方法)

在这里插入图片描述

String s1="中国123456789";
 System.out.println(s1.codePointAt(1));
 结果:22269 

同理:有
在这里插入图片描述
解释:返回该索引前面的的的点数

2.3 codePointCount ——返回索引开始到结束前面一个索引的代码点,——(实例方法)

在这里插入图片描述

String s1="中国123456789";
        System.out.println(s1.codePointCount(0,s1.length()));
        结果是 11,根直接用s1.length(),大多数情况下在效果是一样的

但是呢,这里有很大的区别的,这里看我的另一个文章
有专门的介绍:——

https://blog.csdn.net/weixin_43590500/article/details/117158777

2.4 contains ——判断字符是否有该字符序列——(实例)
  String str1 = "\uD835\uDD6BHello";
        System.out.println( str1.contains("l1"));

解释:方法里面的可以是一个字符,可以是一个字符串,判断结果区分大小写
返回结果是Boolean类型

2.5 concat 方法 将一个字符串连到一个字符串后面——(实例)

在这里插入图片描述

 String ss="我是";
        String ss1="中国人";
        System.out.println(ss.concat(ss1));
        结果:我是中国人 
2.6 compareTo 方法——按照从左到右的顺序比较字符串的大小
String ss3="abc";
        String ss4="acasfadgasdf";
        System.out.println(ss3.compareTo(ss4));
        结果:-1

解释:比括号里的字符串大返回 1小返回-1 等于返回0
从左到右开始比较,当出现一个字符不相等的时候就比较不相等的字符,这里a比较a 相等
b比较c不相等,c的Unicode的编码对应的数字比b大,返回 -1 比较结束

同理:有不区分大小写比较字符串的方法
在这里插入图片描述

2.7

未完待续------------------------------------------

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值