java数组字符串常用方法总结

1.数组

1.1数组的定义

//三种定义方式
int[] arrs=new int[100];
String[] names=new String[]{"张三","李四"};
char[] chars={'a','b'};

1.2Arrays工具类

Arrays.sort(arr);//排序
int index=Arrays.binarySearch(arr,3);//二分法查找数字3的下标
int[] copied=Arrays.copyOfRange(arr,1,7);//拷贝下标从1到6的数组元素
Arrays.fill(arr,8);//将数组中所有元素换成8

2.字符串常用操作

2.1String类

str.indexOf('c')//返回c字符在字符串中第一次出现的位置索引0,1,2。。
str.charAt(0)//返回第一个位置的字符
srt.length()//返回字符串长度
str.equals(srt2)//判断是否相等
str.contains("sc")//判断是否包含sc这个字串
str.toLowerCase()//全部变小写,大写是toUpperCase()
str.toCharArray()//转换为字符数组
str.replace(" ","")//将所有空格替换为空
str.split(" ")//以空格为界分割成多个字符串
str.trim()//去除首尾的空格
str.substring(0,2)//截取第一个和第二个字符(索引是从1开始到2结束)
str.substring(1)//截取从第二个字符开始到结束的所有字符

2.2StringBuffer类

先说一下跟String的区别,

  1. String的方法是不能直接作用于字符串本身的,也就是一旦定义了一个字符串,那么他的内容和长度都是不可改变的,所以一般都是用新的字符串去接收String方法的返回值。而StringBuffer(字符串缓冲区),它可以直接对字符串本身进行修改。
  2. String类重写了Object类的equals()方法,而StringBuffer并没有。简单来说就是StringBuffer类型的数据不能相互比较,就算内容相同也会返回false。
  3. String类之间可以直接str3=str1+str2;相当于字符串的拼接操作,而StringBuffer类不能,编译会不通过。
//增
sb.append("ABC");//将ABC插入到sb的末尾
sb.insert(3,"DE")//在sb的第三个字符后面加上DE(也就是第四个字符的位置)
//删
sb.deleteCharAt(2)//删除第3(2+1)个字符
sb.delete(3,7);//删除第四到第七个字符
//改
sb.replace(3,5,"DE")//第四个到第五个字符换成DE
sb.setCharAt(2,'c')//第三个字符换成c
sb.reverse()//字符串翻转
//查
sb.toString()//转为String类型

补充:若是追求效率可用StringBuilder类。缺点是没有实现线程安全。通常情况下,如果创建一个内容可变的字符串对象,应该优先考虑StringBuilder
。并且用法与StringBuffer基本没有差别。

请添加图片描述

  • 22
    点赞
  • 75
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JJpZh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值