Java面试八股之String类的常用方法有哪些

  1. Java中String类的常用方法有哪些

获取字符串信息:

length():返回字符串的字符数。

isEmpty():判断字符串是否为空(即长度为0)。

访问单个字符:

charAt(int index):返回指定索引处的字符。

子字符串操作:

substring(int beginIndex):返回从指定索引开始到字符串末尾的子字符串。

substring(int beginIndex, int endIndex):返回指定索引范围内的子字符串。

字符串比较:

equals(Object anObject):判断两个字符串是否相等。

equalsIgnoreCase(String anotherString):忽略大小写比较两个字符串是否相等。

compareTo(String anotherString):按照字典顺序比较两个字符串,返回负数、零或正数表示小于、等于或大于。

compareToIgnoreCase(String str):忽略大小写按字典顺序比较两个字符串。

模式匹配与查找:

contains(CharSequence s):判断字符串是否包含指定的字符序列。

startsWith(String prefix):判断字符串是否以指定前缀开始。

startsWith(String prefix, int toffset):判断字符串从指定偏移量开始的部分是否以指定前缀开始。

endsWith(String suffix):判断字符串是否以指定后缀结束。

indexOf(String str):返回指定子字符串在原字符串中首次出现的索引,未找到则返回-1。

indexOf(String str, int fromIndex):从指定索引开始搜索,返回指定子字符串在原字符串中首次出现的索引,未找到则返回-1。

lastIndexOf(String str):返回指定子字符串在原字符串中最后一次出现的索引,未找到则返回-1。

lastIndexOf(String str, int fromIndex):从指定索引开始反向搜索,返回指定子字符串在原字符串中最后一次出现的索引,未找到则返回-1。

字符串拼接与连接:

concat(String str):将指定字符串与原字符串连接在一起,生成新的字符串。

字符串替换与修改:

replace(char oldChar, char newChar):将字符串中所有出现的指定字符替换为新字符,返回新字符串。

replace(CharSequence target, CharSequence replacement):将字符串中所有出现的指定字符序列替换为新字符序列,返回新字符串。

replaceAll(String regex, String replacement):使用正则表达式替换所有匹配项,返回新字符串。

replaceFirst(String regex, String replacement):使用正则表达式替换第一个匹配项,返回新字符串。

大小写转换:

toLowerCase():将字符串转换为全小写。

toUpperCase():将字符串转换为全大写。

编码与解码:

getBytes():使用平台默认字符集将字符串编码为字节数组。

getBytes(String charsetName):使用指定字符集将字符串编码为字节数组。

String(byte[] bytes):使用平台默认字符集将字节数组解码为字符串。

String(byte[] bytes, String charsetName):使用指定字符集将字节数组解码为字符串。

trim与空白处理:

trim():去除字符串两端的空白字符,返回新字符串。

strip()(Java 11及以上):同trim(),根据Unicode标准去除字符串两端的空白字符。

isBlank()(Java 11及以上):判断字符串是否仅包含空格、制表符、换行符等Unicode空白字符,或为空。

isEmpty():判断字符串是否为空(长度为0)。

分割字符串:

split(String regex):根据给定正则表达式将字符串分割成多个子字符串数组。

字符串转整型或其他类型:

Integer.parseInt(String s):将字符串解析为整数。

Double.parseDouble(String s):将字符串解析为双精度浮点数。

其他类似方法,如Long.parseLong, Float.parseFloat, Boolean.parseBoolean等,用于将字符串转换为特定数据类型。

 如果大家需要视频版本的讲解,欢迎关注我的B站:

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用Docker创建verdaccio私服

verdaccio官网 1.Docker安装 这边以Ubuntu安装为例Ubuntu 安装Docker​,具体安装方式请根据自己电脑自行搜索。 2.下载verdaccio docker pull verdaccio/verdaccio3.运行verdaccio 运行容器: docker run -it -d --name verdaccio -p 4873:4873 ver…

29、Qt使用上下文菜单(右键菜单)

说明:使用四种方式实现鼠标右击界面,显示出菜单,菜单上有两个动作,选择两个动作,分别打印“111”和“222”。 界面样式如下: 一、方法1:重写鼠标事件mousePressEvent .h中的代码如下&#xff…

AIConnect 综合算力服务网络:引领智能未来,创造无限可能性!

2022年11月30日,由OpenAI开发的大模型聊天机器人GPT-3发布,首个完全意义上通过图灵测试的人工智能诞生了。这一里程碑事件的启发了人们对AI技术的发展和应用。在短短两年的时间里,各式各样的聊天AI,图片生成AI,视频生成…

B/S版+java开发的医院绩效考核系统maven+Visual Studio Code 医院绩效考核管理系统 提升医疗服务质量的关键

B/S版java开发的医院绩效考核系统mavenVisual Studio Code 医院绩效考核管理系统 提升医疗服务质量的关键 医院绩效评价系统的建设,优化医院绩效管理体系,规范化工作目标的设计、沟通、评价与反馈,改进和提供医院管理人员的管理能力和成效&am…

【强训笔记】day23

NO.1 思路:直接计算结果,先计算怪物可以抗几次攻击,再计算勇士受到的伤害,如果勇士的攻击力大于等于怪物的血量,那么就可以击杀无数只,如果勇士的血量正好是受到攻击的整数倍,那么击杀的怪物数…

深度解刨性能测试工具Locust

🍅 视频学习:文末有免费的配套视频可观看 🍅 关注公众号【互联网杂货铺】,回复 1 ,免费获取软件测试全套资料,资料在手,涨薪更快 Locust安装 …

强化训练:day8(求最小公倍数、数组中的最⻓连续⼦序列、字⺟收集)

文章目录 前言1. 最小公倍数1.1 题目描述1.2 解题思路1.3 代码实现 2. 数组中的最⻓连续⼦序列2.1 题目描述2.2 解题思路2.3 代码实现 3. 字母收集3.1 题目描述3.2 解题思路3.3 代码实现 总结 前言 1. 最小公倍数   2. 数组中的最⻓连续⼦序列   3. 字⺟收集 1. 最小公倍数…

安卓APP+TCP+服务器端

1、在.xml文件中添加权限 <uses-permission android:name"android.permission.ACCESS_WIFI_STATE"/><uses-permission android:name"android.permission.INTERNET"/>2、修改显示界面 <?xml version"1.0" encoding"utf-8&…

二叉树专题(有关二叉树的相关学习)

二叉树 1.数概念及结构 1.1树的结构 树是一种非线性的数据结构&#xff0c;它是由n&#xff08;n>0&#xff09;个有限结点组成一个具有层次关系的集合。把它叫做树是因 为它看起来像一棵倒挂的树&#xff0c;也就是说它是根朝上&#xff0c;而叶朝下的。 有一个特殊的结…

Git泄露(续)

接上一篇补充 git config --global user.name " " git config --global user.email 邮箱地址 配置用户名和邮箱 git commit 使其处于交互区&#xff0c;没有使用 -m&#xff0c;默认用vim 来编辑和提交信息 输入要提交的内容&#xff0c;然后按ESC建回到命令…

RT-DETR原创改进|加入SCNet中的SCConv[CVPR2020]自校准卷积模块!

⭐⭐ RT-DETR改进专栏|包含主干、模块、注意力机制、检测头等前沿创新 ⭐⭐ 一、 论文介绍 论文链接&#xff1a;http://mftp.mmcheng.net/Papers/20cvprSCNet.pdf 代码链接&#xff1a;https://gitcode.com/MCG-NKU/SCNet/ 文章摘要&#xff1a; CNN的最新进展主要致力于设计更…

2024年3月 电子学会 青少年等级考试机器人理论真题五级

202403 青少年等级考试机器人理论真题五级 第 1 题 下图程序运行后&#xff0c;串口监视器显示的结果是&#xff1f;&#xff08; &#xff09; A&#xff1a;0 B&#xff1a;1 C&#xff1a;3 D&#xff1a;4 第 2 题 下列选项中&#xff0c;关于74HC595移位寄存器芯片的…

更高效的数据交互实现丨 DolphinDB Arrow 插件使用教程

Apache Arrow 是一种跨语言的内存数据交换格式&#xff0c;旨在为用户提供高效的数据结构&#xff0c;以实现在不同的数据处理系统之间共享数据而无需进行复制。它由 Apache 软件基金会开发和维护&#xff0c;目前已经成为许多大型数据处理和分析框架的核心组件之一。在分布式框…

【解决】Unity Build 应用程序运行即崩溃问题

开发平台&#xff1a;Unity 2021.3.7f1c1   一、问题描述 编辑器 Build 工程结束&#xff0c;但控制台 未显示 Build completed with a result of Succeeded [时间长度] 信息。该情况下打包流程正常&#xff0c;但应用程序包打开即崩溃。   二、问题测试记录 测试1&#xf…

vulhub靶机struts2环境下的s2-032(CVE-2016-3081)(远程命令执行漏洞)

影响范围 Struts 2.3.19至2.3.20.2、2.3.21至2.3.24.1和2.3.25至2.3.28 当用户提交表单数据并验证失败时&#xff0c;后端会将用户之前提交的参数值使用OGNL表达式%{value}进行解析&#xff0c;然后重新填充到对应的表单数据中。 漏洞搭建 没有特殊要求&#xff0c;请看 (3…

为什么cca门限和tx 功率有关系

Cca是用来决定信道是否繁忙&#xff0c;好像只和收有关。 但是为什么和tx有关。 设想一下这个网路布局。 如果某个STA在决定是否发送的时候&#xff0c;是否不能只看收到的干扰多大&#xff0c;还应该“冒险”一下&#xff0c;如果自己的功率足够&#xff0c;那么就可以扛住干…

网络库-POCO介绍

1.简介 POCO C Libraries 提供一套 C 的类库用以开发基于网络的可移植的应用程序&#xff0c;它提供了许多模块&#xff0c;包括网络编程、文件系统访问、线程和并发、数据库访问、XML处理、配置管理、日志记录等功能。Poco库的设计目标是易于使用、高度可定制和可扩展。 包含…

jupyter notebook中调整图片大小

截屏 ctrl V 这个目前只能保证是截屏大小&#xff0c;改变不了&#xff0c;要么之久 把图形缩小后再截图 感觉很模糊 png文件导入 markdown 代码1 <img src"./1.png" width250 height200>markdown 代码2 <img src"./1.png" width938 height…

【Transformer-BEV编码(10)】CVPR2021 PYVA 第一个明确提到 cross-attention decoder可用于视图转BEV

论文信息 论文名&#xff1a;Projecting Your View Attentively: Monocular Road Scene Layout Estimation via Cross-view Transformation 中文&#xff1a;通过交叉视图变换&#xff08;crossview transform module&#xff09;估计单目道路场景布局 数据集&#xff1a;KITT…

【小积累】@Qualifier注解

今天在看rabbitMQ的时候需要绑定交换机和队列&#xff0c;交换机和队列都已经注入到spring容器中&#xff0c;写了一个配置类&#xff0c;使用了bean注解注入的。所以这时候绑定的时候需要使用容器中的交换机和队列&#xff0c;必须要使用Qualifier去确定是容器中的哪个bean对象…