【Java】常用工具——字符串

news2024/11/24 11:02:44

1. String的创建

String s1 = "Katniss's Blog";
String s2 = new String(); //空的字符串
String s3 = new String("Katniss's Blog");

2. String的常用方法

方法解释
int length()返回字符串长度
int indexOf(char c)返回字符c出现的第一个位置
int indexOf(String s)返回字符串s出现的第一个位置
int lastIndexOf(char c)返回字符c出现的最后一个位置
int lastIndexOf(String s)返回字符串s出现的最后一个位置
String substring(int beginIndex)返回从beginIndex下标开始往后的字符串
String substring(int beginIndex, int endIndex)返回下标[beginIndex, endIndex)的字符串
Stringtrim()返回字符串前后去除空格后的字符串
String toLowerCase()返回全小写的字符串
String toUpperCase()返回全打写的字符串
char charAt(int index)返回指定下标位置的字符
String[] split(String regex, int limit)根据指定的正则表达式分割成子字符串

3. 字符串不变性

在Java中,String是不可变的,也就是说,一旦创建了一个String对象,它的值就不能被修改。这意味着对String对象进行拼接、替换或者其他操作时,实际上是创建了一个新的String对象,原始的String对象保持不变。
请添加图片描述

4. StringBuilder和StringBuffer

  1. 可变性:String不可变,StringBuffer和StringBuilder可变;
  2. 线程安全:String,StringBuffer线程安全;StringBuffer中加了同步锁,;StringBuilder不是线程安全的;
  3. 适用场景:StringBuffer有同步锁,操作慢,适用于多线程;若操作频繁、单线程,推荐使用StringBuilder。

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

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

相关文章

十、RabbitMQ集群

一、clustering 1、 使用集群的原因 单台RabbitMQ遇到内存崩溃、机器故障等情况会导致服务不可用单台RabbitMQ只能满足每秒1000条的消息吞吐量 2、搭建步骤 1、准备三台虚拟机 2、修改3台机器的主机名称 分别为node1、node2、node3 vi /etc/hostname 3、配置节点的hosts文…

【第三阶段】kotlin语言中的数字安全转换函数(String转Int)

字符串有整形相关的转换,尽量使用toIntOrNull()函数 fun main() {//String转Intvar num1"666"println(num1.toInt())//Double不能自动转换为Int,会崩溃,解决崩溃如下:toIntOrNull()如果转换失败会转为nullv…

ATF(TF-A) 威胁模型汇总

安全之安全(security)博客目录导读 目录计划如下,相关内容补充中,待完成后进行超链接,敬请期待,欢迎您的关注 1、通用威胁模型 2、SPMC威胁模型 3、EL3 SPMC威胁模型 4、fvp_r 平台威胁模型 5、RSS-AP接口威胁模型 威胁建模是安全…

290页12万字数字乡村项目规划建设方案WORD

导读:原文《290页12万字数字乡村项目规划建设方案WORD》(获取来源见文尾),本文精选其中精华及架构部分,逻辑清晰、内容完整,为快速形成售前方案提供参考。 目录 第一章总体概述1 1.1.建设背景1 1.1.1.数…

马斯克又出昏招、最疯狂的举动之一

马斯克正在限制他不喜欢的新闻网站和竞争对手的流量。在 X(原 Twitter)上点击纽约时报、路透社、Facebook、Instagram、Threads、Bluesky 和 Substack 的链接,X 故意增加 5 秒钟的开启延迟。 5 秒延迟,新的降权举措? …

VisualStudio打包项目文件为.exe安装包

前言: 使用扩展:install Projects 注意事项:打包项目前,确保项目能正常运行,不然打包毫无意义。 一、安装扩展 打开vs软件->扩展->管理扩展->搜索install Projects->安装->重启软件 二、制作安装包&a…

抖音小程序SEO关键词布局开发文档

一、概述 抖音小程序SEO关键词布局是指在小程序中合理地安排关键词,以提高小程序的搜索排名和用户流量。本开发文档旨在提供关于抖音小程序SEO关键词布局的指导,帮助开发者有效实施关键词布局策略。 二、数据分析 在实施抖音小程序SEO关键词布局之前&a…

SOLIDWORKS镜向是什么?

在现代工程设计中,使用CAD软件是必不可少的。SOLIDWORKS作为一款功能强大的三维建模软件,提供了众多的工具和功能,帮助工程师以更高的效率进行设计。其中,SOLIDWORKS 镜向功能被广泛应用于设计过程中,为用户带来了许多…

园艺照明设备植物生长灯UL8800亚马逊美国站审核标准

美国是一个对安全要求非常严格的国家,美国本土的所有电子产品生产企业早在很多年前就要求有相关安规检测。而随着亚马逊在全球商业的战略地位不断提高,境外的电子设备通过亚马逊不断涌入美国市场,美国对境外的电子产品生产企业并没有强制性的…

08- AD/DA模/数转换

AD/DA模/数转换 8、AD/DA模/数转换8.1 AD转换注意 示例8.2 DA转换DAC转换原理: 8.3 PWM的DAC 8、AD/DA模/数转换 8.1 AD转换 通道引脚对照表: ADC的引脚: 规则通道和注入通道: 各个通道可以在单次、连续、扫描或者间断模式里…

联想拯救者笔记本Win11系统键盘无法打字解决参考方法

一位好机友新购买的联想拯救者笔记本在使用过程中突然发现整个键盘都不能使用了、不能打字、按任何按键都没有反应,只有鼠标能正常操作;那么这是什么问题呢?能不能是笔记本的键盘坏了呢?还是笔记本出现了什么故障而引起键盘失灵呢…

【微服务技术二】Feign、Gateway(路由、过滤器、跨域)的初步认知

微服务技术二 五、Feign远程调用Feign替代RestTemplate自定义Feign配置方式一:配置文件方式:方式二:java代码方式 Feign性能优化Feign的最佳实践* 六、Gateway网关搭建网关服务路由断言工厂Route Predicate Factory路由过滤器 GatewayFilter默…

Linux网络编程(TCP状态转换关系)

文章目录 前言一、TCP状态转换图二、TCP连接状态转换解析三、TCP断开状态转换解析四、为什么需要有2MLS时长总结 前言 本篇文章来讲解一下TCP的状态转换关系,学习这个状态转换关系对于我们深入了解网络编程是非常有必要的。 一、TCP状态转换图 二、TCP连接状态转换…

【数据结构OJ题】相交链表

原题链接:https://leetcode.cn/problems/intersection-of-two-linked-lists/description/ 目录 1. 题目描述 2. 思路分析 3. 代码实现 1. 题目描述 2. 思路分析 看到这道题,很容易想到的方法就是暴力求解,就是将一个链表的每个结点的地址…

【Spring专题】Spring之Bean的生命周期源码解析——阶段二(一)(IOC之实例化)

目录 前言阅读准备阅读指引阅读建议 课程内容一、SpringIOC之实例化1.1 简单回顾1.2 概念回顾1.3 核心方法讲解 二、方法讲解2.1 AbstractBeanFactory#getMergedLocalBeanDefinition:合并BeanDefinition2.2 AbstractAutowireCapableBeanFactory#createBean&#xff…

iOS 17 测试版中 SwiftUI 视图首次显示时状态的改变导致动画“副作用”的解决方法

问题现象 精彩的 SwiftUI 动画可以让我们的 App 活灵活现、精妙绝伦。不过原本正常的动画在测试版本的 iOS 里却有着让码农持续秃头的“副作用”: 我们希望在视图首次显示时驱动状态改变来产生橘色小球围绕红球旋转的动画,红球应该始终保持在屏幕中心。…

Flink的Standalone部署实战

在Flink是通用的框架,以混合和匹配的方式支持部署不同场景,而Standalone单机部署方便快速部署,记录本地部署过程,方便备查。 环境要求 1)JDK1.8及以上 2)flink-1.14.3 3)CentOS7 Flink相关信…

腾讯24届校招内推

校招开始啦~有兴趣的话可以扫我的码投,也可以分享给身边找工作的同学~ ❤投递攻略 1️⃣腾讯校招步骤,先微信扫码绑定内推关系,后在电脑上上传更改简历和部门投递 2️⃣投递时将选择投递部门,投递后将在…

实战项目-在线学院 阿里云视频的操作

一 阿里云视频 1.1 阿里视频上传 1.2 阿里云视频上传

Vue3 Vuex状态管理多组件传递数据简单应用

去官网学习→安装 | Vuex cd 项目 安装 Vuex&#xff1a; npm install --save vuex 或着 创建项目时勾选Vuex vue create vue-demo ? Please pick a preset: Manually select features ? Check the features needed for your project: (Press <space> to se…