Java中的String类的常用方法(对于字符串的常用操作)

目录

一、获取指定索引的字符

二、 获取指定字符或者字符串的索引位置

三、判断字符串是否以指定内容开头或结尾

四、替换指定的字符或者是字符串

五、获取字符串的子串

六、将字符串转换为字符数组

 七、比较字符串的内容是否相等

 八、连接字符串

九、比较两个字符串的大小


一、获取指定索引的字符

charAt(int index)该方法接受一个参数,就是指定的索引,返回指定索引位置的字符,返回值是字符型。

 public static void main(String[] args) {String s="abcdef";System.out.println(s.charAt(1));}

二、 获取指定字符或者字符串的索引位置

indexOf(char ch)该方法接受一个参数,是字符类型,返回值是int型,表示指定字符第一次出现在字符串中的位置,没有找到就返回-1,注意是第一次!

indexOf(char ch,int fromIndex)表示的是从fromIndex索引开始,上面的是表示从索引0开始。

indexOf(String s)该方法接受一个参数,是字符串类型,返回值是String类型,表示指定字符串第一次出现在字符串中的索引位置,没有找到返回-1,注意是第一次出现!

indexOf(String s,int fromIndex)从fromIndex索引开始。

 public static void main(String[] args) {String s="abcdbefbef";System.out.println(s.indexOf('b',3));System.out.println(s.indexOf('b'));System.out.println(s.indexOf("bef"));System.out.println(s.indexOf("bef",6));}

三、判断字符串是否以指定内容开头或结尾

startsWith(String s)判断字符串是否以指定内容开头,是的话返回true,否的话返回false。

endsWith(String s)判断字符串是否以指定内容结尾,是的话返回true,否的话返回false。

 public static void main(String[] args) {String s="abcdbefbef";System.out.println(s.startsWith("abc"));System.out.println(s.startsWith("bc"));System.out.println(s.endsWith("ef"));System.out.println(s.endsWith("cef"));}

四、替换指定的字符或者是字符串

replace(char oldchar,char newchar)第一个参数是被替换的,第二个参数是用来替换的,虽然参考上是字符型,但是字符型和字符串String型都是可以的,它是表示满足条件的全都替换,而不是只是一个!

replaceAll(String regex,String newchar)看字面意思它和replace方法一个是替换单个匹配项,一个是全都替换,但不是这样的!他们都是替换匹配所有项,只不过replaceAll它的接收参数是正则表达式而已。

要特别主要的是,这两个方法的使用不会改变原来的字符串,他们只是创建了一个新的字符串!!!

public static void main(String[] args) {String s="abcdab1a2";System.out.println(s.replace('a','1'));System.out.println(s.replace("b","1"));System.out.println(s.replaceAll("\\w","9"));System.out.println(s);}

五、获取字符串的子串

substring(int begin)接受一个参数表示开始的索引位置,一直到末尾,截取的子串

substring(int begin,int end)截取的子串是[begin,end),从begin开始,到end结束,但是不包括end截取的子串。

注意两者都不改变原来的字符串!

 public static void main(String[] args) {String s="012345";System.out.println(s.substring(2));System.out.println(s.substring(2,4));System.out.println(s);}

六、将字符串转换为字符数组

toCharArray()将指定的字符串转换为字符数组。

 public static void main(String[] args) {String s="012345";char[] c=s.toCharArray();for(char cc:c){System.out.println(cc);}System.out.println(s);}

 七、比较字符串的内容是否相等

equals(String s)比较两个字符串的内容是否相等,原本equals比较的是地址,只不过String重写了equals方法,所以比较的是字符串的内容

equalsIgnoreCase()忽略大小写比较字符串的内容是否相等。

 public static void main(String[] args) {String s1="abc",s2="ABC";System.out.println(s1.equals(s2));System.out.println(s1.equalsIgnoreCase(s2));}

 八、连接字符串

concat(String s)连接字符串,参数中的字符串连接在后面。

 public static void main(String[] args) {String s1="abc",s2="ABC";System.out.println(s1.concat(s2));System.out.println(s2.concat(s1));}

九、比较两个字符串的大小

compareTo()方法,参数接受一个字符串
比较大小的规则其实就是按照ASCII的大小比较的
两个字符串,出现的第一个两个字符不同的,返回他们的ASCII值的
如果他们的字符都一样的话,返回的就是他们的长度差由此可知,两个字符串相等的话,返回的就是0
如s1.compareTo(s2)比较的话,是s1-s2的哦,谁调用,谁就减!!!
public static void main(String[] args) {String s1="abc",s2="abd",s3="abcde",s4="abc";System.out.println(s1.compareTo(s2));System.out.println(s2.compareTo(s1));System.out.println(s1.compareTo(s3));System.out.println(s3.compareTo(s1));System.out.println(s1.compareTo(s4));}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/683918.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ESP32学习(3)——连接WIFI

1.简介 Wi-Fi是基于IEEE 802.11标准的无线网络技术 让联网设备以无线电波的形式,加入采用TCP/IP通信协议的网络. Wi-Fi设备有两种模式: 1.Access Point(AP) 模式,此为无线接入点,家里的光猫就是结合WiFi和internet路由功能的AP。…

【Java程序员面试专栏 分布式中间件】Redis 核心面试指引

关于Redis部分的核心知识进行一网打尽,包括Redis的基本概念,基本架构,工作流程,存储机制等,通过一篇文章串联面试重点,并且帮助加强日常基础知识的理解,全局思维导图如下所示 基础概念 明确redis的特性、应用场景和数据结构 什么是Redis,Redis有哪些应用场景 Redi…

【十九】【C++】 priority_queue简单使用和仿函数

priority_queue文档介绍翻译 优先队列是一种容器适配器,专门设计成其中的第一个元素始终是根据某种严格的弱排序准则最大的元素。 这种上下文类似于堆,其中元素可以在任何时刻插入,而只能检索最大堆元素(在优先队列中顶部的元素&a…

Stable Diffusion系列(五):原理剖析——从文字到图片的神奇魔法(扩散篇)

文章目录 DDPM论文整体原理前向扩散过程反向扩散过程模型训练过程模型生成过程概率分布视角参数模型设置论文结果分析 要想完成SD中从文字到图片的操作,必须要做到两步,第一步是理解文字输入包含的语义,第二步是利用语义引导图片的生成。下面…

Uipath 实现Excel 文件合并

场景描述 某文件夹下有多个相同结构(标题列相同)的Excel 文件,需实现汇总到一个Excel文件。 常见场景有销售明细汇总,订单汇总等。 解决方案 对于非IT 人员则可使用Uipath 新式Excel活动,通过拖拉实现。也可以通过内存表或使用VB脚本&…

寒假学习记录17:包管理器(包管理工具)

概念 包(package) 包含元数据的库,这些元数据包括:名称,描述,git主页,许可证协议,作者,依赖..... 库(library,简称lib) 以一个或多个模…

【教3妹学编程-算法题】子集中元素的最大数量

2哥 : 3妹,今年过年收到压岁钱了没呢。 3妹:切,我都多大了啊,肯定没收了啊 2哥 : 俺也一样,不仅没收到,小侄子小外甥都得给,还倒贴好几千 3妹:哈哈哈哈,2叔叔&#xff0c…

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Navigation组件

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Navigation组件 一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、Navigation组件 鸿蒙(HarmonyOS)项目方舟框架&#…

Python中多种生成随机密码超实用实例

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站零基础入门的AI学习网站~。 前言 密码是信息安全的基石,它用于保护我们的账户、数据和隐私。为了确保密码足够强大,…

clang前端

Clang可以处理C、C和Objective-C源代码 Clang简介 Clang可能指三种不同的实体: 前端(在Clang库中实现)编译驱动程序(在clang命令和Clang驱动程序库中实现)实际的编译器(在clang-ccl命令中实现&#xff0…

kafka如何保证消息不丢?

概述 我们知道Kafka架构如下,主要由 Producer、Broker、Consumer 三部分组成。一条消息从生产到消费完成这个过程,可以划分三个阶段,生产阶段、存储阶段、消费阶段。 产阶段: 在这个阶段,从消息在 Producer 创建出来,…

c++阶梯之类与对象(下)

前文: c阶梯之类与对象(上)-CSDN博客 c阶梯之类与对象(中)-CSDN博客 c阶梯之类与对象(中)< 续集 >-CSDN博客 1. 再谈构造函数 1.1 构造函数体赋值 在创建对象时&a…

【机器学习笔记】3 逻辑回归

分类问题 分类问题监督学习最主要的类型,主要特征是标签离散,逻辑回归是解决分类问题的常见算法,输入变量可以是离散的也可以是连续的 二分类 先从用蓝色圆形数据定义为类型1,其余数据为类型2;只需要分类1次&#x…

Java并发基础:SynchronousQueue全面解析!

内容概要 SynchronousQueue的优点在于其直接性和高效性,它实现了线程间的即时数据交换,无需中间缓存,确保了数据传输的实时性和准确性,同时,其灵活的阻塞机制使得线程同步变得简单而直观,适用于需要精确协…

相机图像质量研究(13)常见问题总结:光学结构对成像的影响--鬼影

系列文章目录 相机图像质量研究(1)Camera成像流程介绍 相机图像质量研究(2)ISP专用平台调优介绍 相机图像质量研究(3)图像质量测试介绍 相机图像质量研究(4)常见问题总结:光学结构对成像的影响--焦距 相机图像质量研究(5)常见问题总结:光学结构对成…

TiDB 在医疗保障信息平台的应用实践

文章介绍了 TiDB 在医疗保障信息平台中的应用。东软医保云应用管理平台通过与 TiDB 联合,成功满足了医疗保障业务中高并发、实时性和复杂查询的要求。在某地市医疗保障信息平台的实践中,TiDB 分布式数据库有效实现了在线交易和实时分析服务,日…

C语言学习day14:数组定义和使用

定义变量: 数据类型 变量 值 数组定义: 数据类型 数组名[元素个数]{值1,值2,值3} 代码: int main() {//定义变量//数据类型 变量 值//数组定义//数据类型 数组名[元素个数]{值1,值2,值3}//数组下标 数组名[小标]//数组下标是…

.NET Core WebAPI中封装Swagger配置

一、创建相关文件 创建一个Utility/SwaggerExt文件夹&#xff0c;添加一个类 二、在Program中找到Swagger相关配置信息 三、添加方法&#xff0c;在Program中调用 在SwaggerExt类中添加方法&#xff0c;将相关配置添写入 /// <summary> /// swagger配置 /// </sum…

初识Qt | 从安装到编写Hello World程序

文章目录 1.前端开发简单分类2.Qt的简单介绍3.Qt的安装和环境配置4.创建简单的Qt项目 1.前端开发简单分类 前端开发&#xff0c;这里是一个广义的概念&#xff0c;不单指网页开发&#xff0c;它的常见分类 网页开发&#xff1a;前端开发的主要领域&#xff0c;使用HTML、CSS …

[经验] 欧阳修唐宋八大家之首是谁 #微信#知识分享#学习方法

欧阳修唐宋八大家之首是谁 1、唐宋八大家之首是谁 唐宋八大家是中国文学史上最具代表性的八位大文豪&#xff0c;他们的文学成就在中国文学史上占有重要地位&#xff0c;被誉为文学史上的“巨人”。 唐宋八大家之首&#xff0c;无疑是唐代著名诗人杜甫。他出生在一个贫苦的家…