当前位置: 首页 > news >正文

String常用操作

String常用方法

构造字符串

常用的构造字符串有3种:
1.直接赋值String s = "abcd";
2.实例化调用构造方法String s = new String("abcd");
3.实例化传字符数组

char[] ch = {'a','b','c','d'};
String s = new String(ch);

字符串比较

==比较

==比较的是两个字符串引用对象的地址是否一致

equals方法比较

boolean equals(Object anObject);

equals方法相同返回true,不同返回false;
==和equals

equalsIngnoreCase方法

boolean equalsIgnoreCase(String anotherString);

该方法与equals方法使用一样,只是不会考虑大小写。

compareTo方法

int compareTo(String s);

3.compareTo方法比较的是两个字符串内容,使用形式字符串1.compareTo(字符串2);
按照字符的ASCII码值一个一个字符比较,字符串1大于字符串2返回正值,小于返回负值,相等返回0。和c语言中的strcmp方法比较规则一样。

compareToIngnoreCase方法

int compareToIgnoreCase(String str);

该方法与 compareTo方法使用一样,只是不会考虑大小写。

字符查找

charAt方法

char charAt(int index);

返回index下标的字符,注意越界。使用方法字符串名.charAt(数字);

indexof方法

int indexOf(int ch);

该方法返回第一次出现字符ch的值,用int是使用字符ASCII码值表示,没找到返回-1。
使用方法字符串名.indexof(字符);
该方法还有重载方法:

int indexOf(int ch, int fromIndex);

这个方法是重fromIndex位置开始向后找第一次出现字符ch的位置并返回。

int indexOf(String str);

这个方法是返回第一次出现字符串str的第一个字符的坐标。

int indexOf(String str, int fromIndex)

这个方法是重fromIndex位置开始向后找第一次出现字符串str的第一个字符的坐标并返回。

lastIndexOf方法

int lastIndexOf(int ch);

该方法返回重最后开始往前找第一次出现字符ch的值,用int是使用字符ASCII码值表示,没找到依然返回-1。
使用方法字符串名.lastIndexOf(字符);
该方法还有重载方法:

int lastIndexOf(int ch, int fromIndex);
int lastIndexOf(String str);
int lastIndexOf(String str, int fromIndex);

这三个重载方法和indexOf的重载方法的特性一样,只不过都是从后往前找。

转化

valueOf方法

该方法是一个静态方法。
该方法是将其他类型转化为字符串,如果是一个自定义类转化为字符串,该类重写了toString方法就转化为正常形式,没重写就转化为hash值。
使用方法String str = String.valueOf(待转化值);

Integer.parseInt方法

该方法作用是将字符串转化为数字,该字符串中必须是数字字符串(只有数字)。
使用方法int data =Integer.parseInt("13222");

toUpperCase和toLowerCase

这两个方法是将字符串中的字母大小写转换,顾名思义toUpperCase将小写字母全转换成大写,toLowerCase将大写字母全转换成小写。
使用方法字符串名.toUpperCase();

toCharArray方法

这个方法是将字符串转为字符数组。
使用方法char[] ch = 字符串名.toCharArray();

format方法

该方法是一个静态方法。
这是格式化存入字符串,使用跟c语言中的printf函数一样。举个例:

String s = String.format("%d:%d:%d",12,24,50);

替换

replace方法

11
这个方法会将字符串中的oldChar全部替换为newChar。
使用方法字符串名。replace(old,new);

replaceAll和replaceFirst

String replaceAll(String regex, String replacement);
String replaceFirst(String regex, String replacement);

replaceAll将指定的字符串regex全部转化为replacement。
replaceFirst将遇到的第一个指定的字符串regex全部转化为replacement
注意事项:
由于字符串是不可变对象, 替换不会修改当前的字符串, 而是产生一个新的字符串.

拆分

split方法

String[] split(String regex);
String[] split(String regex, int limit);

第一个是将字符串通过字符regex拆分。
第二个是将字符串通过字符regex拆分为limit个。

截取

substring

String substring(int beginIndex);//从 beginIndex截取到结尾
String substring(int beginIndex, int endIndex);//从 beginIndex截取到endIndex

删除左右空格

split

该方法直接删除字符串的左右两边的空格。
使用方法字符串名.split();

注意事项

在上面对字符串的操作中都不会直接修改原字符串的内容。

StringBuilder和StringBuffer

这两个类中的方法就是直接修改的原字符串上的。StringBuilder适用于多线程
StringBuffer适用于单线程。
其中主要方法如下图:
2

http://www.lryc.cn/news/364761.html

相关文章:

  • git: 批量删除分支
  • 【第5章】SpringBoot实战篇之登录模式切换
  • 2024最新华为OD算法题目
  • Redis集群方案有哪些?
  • 数字影像产业园的三大赋能:科技、创新与无限可能
  • 枚举(enum)+联合体(union)
  • postman教程-15-前置脚本
  • AIGC会带来失业潮吗?紧紧跟时代第一步,如何学习AIGC
  • C++第二十四弹---从零开始模拟STL中的list(上)
  • 大宋咨询(深圳社情民意调查)关于社情民意调查研究的内容
  • PID算法在电机速度控制上的应用
  • 埃隆·马斯克 - 从梦想家到改变世界的企业家
  • 微信小程序长图片自适应
  • elasticsearch hanlp 插件安装操作
  • 为什么进程和线程 ID 总是 4 的倍数?
  • LabVIEW版本控制
  • 不输Kimi的AI插件——Elmo Chat (免费,无需注册)
  • 使用cesiumLab使shp转为3dtlies
  • 中科数安 | 透明加密防泄密系统!如何有效防止企业内部核心数据资料外泄?
  • go的反射和断言
  • 打造新引擎,迈向数智金融新未来
  • 广东智慧物流2024年端午节放假安排
  • Facebook的隐私保护挑战:用户数据安全的新时代
  • Gradio.NET:一个快速制作演示demo网页的利器
  • 001 IOC与DI(有点杂)
  • Python语言自学:深入探索四个基础、五个进阶、六个实战及七个挑战
  • 运维开发介绍
  • Mac版的Typora的安装和激活(亲测可用哦~~~)
  • 【Python系列】Python 方法变量参数详解
  • 生命在于学习——Python人工智能原理(3.2)