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

String字符串的常见方法总结

目录

一、int length():返回字符串的长度

二、char charAt(int index):返回某索引处的字符

三、boolean isEmpty():判断字符串是否为空

四、String toUpperCase():将字符转换成大写

五、String toLowerCase():将字符转换成小写

六、String trim():去除首尾空白字符

七、boolean equals(Object obj):比较字符串的内容是否相等

八、boolean equalsIgnoreCase(String anotherString):忽略大小写比较字符串内容是否相等

九、int compareTo(String anotherString):比较两个字符串的大小

十、String subStriing(int beginIndex):返回一个新的字符串,它是原字符串从beginIndex开始截取到原字符串结尾的一个子字符串

十一、String subStriing(int beginIndex,int endIndex):返回一个新的字符串,它是原字符串从beginIndex开始截取到endIndex(不包含)的一个子字符串

十二、boolean endsWith(String suffix):测试此字符串是否以指定后缀结尾

十三、boolean startsWith(String prefix):测试此字符串是否以指定前缀开始

十四、boolean startsWith(String prefix,int toffset):测试此字符串是否从指定索引开始的子字符串是否以制定前缀开始

十五、boolean contains(CharSequence s): 判断当前对象代表的字符串是否包含参数字符串内容

十六、int indexOf(String str):返回指定子字符串在此字符串中第一次出现处的索引

十七、int indexOf(String str, int fromIndex):返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始

十八、int lastindexOf(String str):返回指定子字符串在此字符串中最右边出现处的索引

十九、int lastIndexOf(String str, int fromIndex):返回指定子字符串在此字符串中最后一次出现处的索引,从指定的索引开始反向搜索

注: indexOf和lastIndexOf方法如果未找到都是返回-1

二十、String replace(char oldChar, char newChar):返回一个新的字符串,它是通过用newChar替换此字符串中出现的所有oldChar得到的。

二十一、String replace(CharSequence target, CharSequence replacement): 使用指定的字面值替换序列替换此字符串所有匹配字面值目标序列的子字符串。

二十二、String replaceAll(String regex, String replacement): 使用给定的replacement替换此字符串所有匹配给定的正则表达式的子字符串。

二十三、String replaceFirst(String regex, String replacement): 使用给定的replacement替换此字符串匹配给定的正则表达式的第一个子字符串。

二十四、StringD split(String regex):根据给定正则表达式的匹配拆分此字符串

二十五、StringD split(String regex, int limit): 根据匹配给定的正则表达式来拆分此字符串,最多不超过limit个,如果超过了,剩下的全部都放到最后一个元素中


一、int length():返回字符串的长度

二、char charAt(int index):返回某索引处的字符

三、boolean isEmpty():判断字符串是否为空

四、String toUpperCase():将字符转换成大写

五、String toLowerCase():将字符转换成小写

六、boolean equals(Object obj):比较字符串的内容是否相等

七、boolean equalsIgnoreCase(String anotherString):忽略大小写比较字符串内容是否相等

代码实现:

public class summary10 {public static void main(String[] args) {String str1 = "HelloWorld";String str2 = "";System.out.println(str1.length());//获取字符串的长度 10System.out.println(str1.charAt(0));//获取字符串指定索引处的字符 HSystem.out.println(str1.isEmpty());//判断字符穿是否为空 falseSystem.out.println(str2.isEmpty());//truestr2 =str1.toUpperCase();//将字符串所有小写变为大写 System.out.println(str1);//HelloWorldSystem.out.println(str2);//HELLOWORLDstr2 = str2.toLowerCase();//将字符串所有大写变为小写System.out.println(str2);//helloworldSystem.out.println(str1.equals(str2));//比较字符串的内容是否相同 falseSystem.out.println(str1.equalsIgnoreCase(str2));//与equals相同但是忽略大小写 true}
}

八、String trim():去除首尾空白字符

九、int compareTo(String anotherString):比较两个字符串的大小

十、String subStriing(int beginIndex):返回一个新的字符串,它是原字符串从beginIndex开始截取到原字符串结尾的一个子字符串

十一、String subStriing(int beginIndex,int endIndex):返回一个新的字符串,它是原字符串从beginIndex开始截取到endIndex(不包含)的一个子字符串

代码实现:

public class Symmary02 {public static void main(String[] args) {String str1 = "   he llo world   ";System.out.println(str1);System.out.println(str1.trim());//去除字符串两边的空格String str2 = "abc";String str3 = "aAb";System.out.println(str2.compareTo(str3));//比较两个字符串的大小 33System.out.println(str2.compareToIgnoreCase(str3));//与compareTo相同但是忽略大小写 1//涉及到字符串排序//该方法用于两个相同数据类型的比较,两个不同类型的数据不能用此方法来比较。String str4 = "沧海月明珠有泪,蓝田日暖玉生烟";System.out.println(str4.substring(8));//返回一个新的字符串,它是字符串从beginIndex开始截取到最后的一个子字符串。System.out.println(str4.substring(1,3));//返回一个新的字符串,它是字符串从beginIndex开始截取到endIndex(不包含)的子字符串。System.out.println(str4);}
}

 

图1  

十二、boolean endsWith(String suffix):测试此字符串是否以指定后缀结尾

十三、boolean startsWith(String prefix):测试此字符串是否以指定前缀开始

十四、boolean startsWith(String prefix,int toffset):测试此字符串是否从指定索引开始的子字符串是否以制定前缀开始

十五、boolean contains(CharSequence s): 判断当前对象代表的字符串是否包含参数字符串内容

十六、int indexOf(String str):返回指定子字符串在此字符串中第一次出现处的索引

十七、int indexOf(String str, int fromIndex):返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始

十八、int lastindexOf(String str):返回指定子字符串在此字符串中最右边出现处的索引

十九、int lastIndexOf(String str, int fromIndex):返回指定子字符串在此字符串中最后一次出现处的索引,从指定的索引开始反向搜索

注: indexOf和lastIndexOf方法如果未找到都是返回-1

代码实现:

public class Summary03 {public static void main(String[] args) {String str1 = "helloworld";//测试此字符串是否以指定的后缀结束System.out.println(str1.endsWith("rld"));//true//测试此字符串是否以指定的前缀开始System.out.println(str1.startsWith("He"));//false//测试此字符串从指定的索引开始的子字符串是否以指定前缀开始System.out.println(str1.startsWith("low",3));//true//当且仅当此字符串包含指定的char值序列时,返回trueSystem.out.println(str1.contains("wor"));//true//找到返回下标位置,找不到返回 -1System.out.println(str1.indexOf("wo"));//5System.out.println(str1.indexOf("rrr"));//-1System.out.println(str1.indexOf('o',5));//6  以最终位置为准System.out.println(str1.lastIndexOf("o"));//6  System.out.println(str1.lastIndexOf("o",5));//4}
}

二十、String replace(char oldChar, char newChar):返回一个新的字符串,它是通过用newChar替换此字符串中出现的所有oldChar得到的。

二十一、String replace(CharSequence target, CharSequence replacement): 使用指定的字面值替换序列替换此字符串所有匹配字面值目标序列的子字符串。

二十二、String replaceAll(String regex, String replacement): 使用给定的replacement替换此字符串所有匹配给定的正则表达式的子字符串。

二十三、String replaceFirst(String regex, String replacement): 使用给定的replacement替换此字符串匹配给定的正则表达式的第一个子字符串。

代码实现:

public class Summary04 {public static void main(String[] args) {String str1 = "茕茕白兔,东走西顾,衣不如新,人不如故";String str2 = str1.replace('白', '黑');System.out.println(str1);//茕茕白兔,东走西顾,衣不如新,人不如故System.out.println(str2);//茕茕黑兔,东走西顾,衣不如新,人不如故String str3 = str1.replace("黑","白");System.out.println(str3);//茕茕白兔,东走西顾,衣不如新,人不如故String str = "12hello34world5456java64142mysql594";System.out.println(str.replaceAll("\\d+",",").replaceAll(","," "));//使用给定的replacement替换此字符串匹配给定的正则表达式的第一个子字符串。str = "hello34world hello java";System.out.println(str.replaceFirst("\\d+"," "));}
}

图2 

自此,String字符串的常见方法总结也就完成啦!希望对需要的小伙伴有帮助!

相关文章:

String字符串的常见方法总结

目录 一、int length():返回字符串的长度 二、char charAt(int index):返回某索引处的字符 三、boolean isEmpty():判断字符串是否为空 四、String toUpperCase():将字符转换成大写 五、String toLowerCase():将字符转换成小写 六、String trim():去除首尾空白…...

Postgresql源码(122)Listen / Notify与事务的联动机制

前言 Notify和Listen是Postgresql提供的不同会话间异步消息通信功能,例子: LISTEN virtual; NOTIFY virtual; Asynchronous notification "virtual" received from server process with PID 8448. NOTIFY virtual, This is the payload; Asy…...

QT 数据库的增加操作和画图 Win

第一步、先配置CMakeLists.txt 在CMakeLists.txt中添加 find_package(Qt6 REQUIRED COMPONENTS Sql) find_package(Qt6 REQUIRED COMPONENTS Charts)target_link_libraries(${PROJECT_NAME} PRIVATE Qt6::Sql) target_link_libraries(${PROJECT_NAME} PRIVATE Qt6::Charts)避…...

【JS逆向学习】同花顺(q.10jqka)补环境

逆向目标 目标网址:https://q.10jqka.com.cn/ 目标接口: https://q.10jqka.com.cn/index/index/board/all/field/zdf/order/desc/page/3/ajax/1/ 目标参数:cookie 逆向过程 老规矩,先分析网络请求,发现是 cookie 加…...

解决MobaXterm网络错误连接超时问题

报错页面: 报错原因: ①网络断开了 ②网络端口,端口号改变 解决办法: ①重新连接网络按R ②固定端口号 第一步:编辑------>虚拟机网络编辑器(我的Linux在虚拟机里) 第二步:用…...

突发!AI独角兽「竹间智能」被曝停工停产6个月

大家好我是二狗。 今天早上起来刷朋友圈,看到一张截图——AI创企竹间智能,宣称因为公司所处的经营环境艰难,部分部门和岗位将从即日起停工停产6个月。 图源:(企服科学) 下面是文字版: 由于公司…...

Qt应用软件【协议篇】GPIO控制LED灯

GPIO简介 GPIO(General Purpose Input/Output,通用输入输出)是一种通用的端口定义,在各种计算机、嵌入式系统和微控制器中广泛应用。通过GPIO,计算机或微控制器可以与外部世界进行交互,例如读取传感器数据或控制外部设备(如LED灯、电机等)。 GPIO的应用场景 按钮和开…...

vulfocus靶场搭建

vulfocus靶场搭建 什么是vulfocus搭建教程靶场配置场景靶场编排靶场优化 什么是vulfocus Vulfocus 是一个漏洞集成平台,将漏洞环境 docker 镜像,放入即可使用,开箱即用,我们可以通过搭建该靶场,简单方便地复现一些框架…...

Swift基础知识:30.Swift访问控制

在 Swift 中,访问控制(Access Control)是一种用于限制代码模块对其他代码模块的访问权限的机制。通过访问控制,可以控制代码中各个部分的可见性和可访问性,以便于提高代码的安全性、可维护性和可复用性。 访问级别 S…...

ElasticSearch聚合操作

目录 ElasticSearch聚合操作 基本语法 聚合的分类 后续示例数据 Metric Aggregation Bucket Aggregation ES聚合分析不精准原因分析 提高聚合精确度 ElasticSearch聚合操作 Elasticsearch除搜索以外,提供了针对ES 数据进行统计分析的功能。聚合(aggregation…...

普中51单片机学习(定时器和计数器)

定时器和计数器 51单片机有两组定时器/计数器,因为既可以定时,又可以计数,故称之为定时器/计数器。定时器/计数器和单片机的CPU是相互独立的。定时器/计数器工作的过程是自动完成的,不需要CPU的参与。51单片机中的定时器/计数器是…...

having子句

目录 having子句 having和where的区别 Oracle从入门到总裁:https://blog.csdn.net/weixin_67859959/article/details/135209645 现在要求查询出每个职位的名称,职位的平均工资,但是要求显示平均工资高于 200 的职位 按照职位先进行分组,同…...

STM32H7 系列 MCU 内部 SRAM

通过参看《STM32H7 参考手册》“2.4 Embedded SRAM”章节知道 The STM32H743/53xx and STM32H750xB 内存特性: Up to 864 Kbytes of System SRAM 128 Kbytes of data TCM RAM 64 Kbytes of instruction TCM RAM 4 Kbytes of backup SRAM 1.1 TCM SRAM TCM : Tightly-Coupled …...

备战蓝桥杯---动态规划(应用2(一些十分巧妙的优化dp的手段))

好久不见,甚是想念,最近一直在看过河这道题(感觉最近脑子有点宕机QAQ),现在算是有点懂了,打算记录下这道又爱又恨的题。(如有错误欢迎大佬帮忙指出) 话不多说,直接看题&…...

从 git 分支中合并特定文件,而不是整个分支的内容

问题 在git 中,我们可以使用 git merge 命令,合并整个分支,覆盖当前分支的内容,但是有时候我们并不想这么做,而是想 merge 某个文件。那么下面提供两种办法。 方法一 使用 git checkout,从别的分支&#x…...

pycharm 远程运行报错 Failed to prepare environment

什么也没动的情况下,远程连接后运行是没问题的,突然在运行时就运行不了了,解决方案 清理缓存: 有时候 PyCharm 的内部缓存可能出现问题,可以尝试清除缓存(File > Invalidate Caches / Restart&#xff0…...

(十二)【Jmeter】线程(Threads(Users))之setUp 线程组

简述 操作路径如下: 作用:在正式测试开始前执行预加载或预热操作,为测试做准备。配置:设置预加载或预热操作的采样器、循环次数等参数。使用场景:确保在正式测试开始前应用程序已经达到稳定状态,减少测试结果的偏差。优点:提供预加载或预热操作,确保测试的准确性。缺…...

代码随想录算法训练营第二十五天|216.组合总和III,17.电话号码的字母组合

目录 216.组合总和II 17.电话号码的字母组合 216.组合总和II 如果把 组合问题理解了,本题就容易一些了。 题目链接/文章讲解:代码随想录 视频讲解:和组合问题有啥区别?回溯算法如何剪枝?| LeetCode:216.…...

c#创建安装windows服务

背景:最近在做设备数据对接采集时,遇到一些设备不是标准的Service-Client接口,导致采集的数据不够准确;比如设备如果中途开关机后,加工的数量就会从0开始重新计数,因此需要实时监控设备的数据,进行叠加处理;考略到工厂设备比较多,实时监听接口的数据为每秒3次,因此将…...

【JVM】打破双亲委派机制

📝个人主页:五敷有你 🔥系列专栏:JVM ⛺️稳中求进,晒太阳 打破双亲委派机制 打破双亲委派机制三种方法 自定义类加载器 ClassLoader包含了四个核心方法 //由类加载器子类实现,获取二进制数据调用…...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

Linux链表操作全解析

Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表?1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...

java 实现excel文件转pdf | 无水印 | 无限制

文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...

(二)TensorRT-LLM | 模型导出(v0.20.0rc3)

0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述,后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作,其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...

Linux简单的操作

ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...

解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错

出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...

c#开发AI模型对话

AI模型 前面已经介绍了一般AI模型本地部署,直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型,但是目前国内可能使用不多,至少实践例子很少看见。开发训练模型就不介绍了&am…...

【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具

第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...

【VLNs篇】07:NavRL—在动态环境中学习安全飞行

项目内容论文标题NavRL: 在动态环境中学习安全飞行 (NavRL: Learning Safe Flight in Dynamic Environments)核心问题解决无人机在包含静态和动态障碍物的复杂环境中进行安全、高效自主导航的挑战,克服传统方法和现有强化学习方法的局限性。核心算法基于近端策略优化…...

从面试角度回答Android中ContentProvider启动原理

Android中ContentProvider原理的面试角度解析,分为​​已启动​​和​​未启动​​两种场景: 一、ContentProvider已启动的情况 1. ​​核心流程​​ ​​触发条件​​:当其他组件(如Activity、Service)通过ContentR…...