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.rhkb.cn/news/339197.html

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

相关文章

隐马尔可夫链

1 马尔可夫链 马尔科夫链(Markov Chain)是一种数学模型,它描述了一系列可能事件的概率,其中每个事件的发生仅依赖于前一个事件的状态。这一特性称为“无记忆性”或“马尔可夫性质”。我将用一个简单的天气预测模型作为例子来解释马…

Java+SVNCloud+Mysql课程设计

文章目录 1、主要内容2、所需准备3、与sql访问的中间类:SqlMessage4、窗口界面5、main方法 1、主要内容 课程设计,主要通过Javas wing创建窗口,jdbc连接云端mysql数据库进行基本操作,支持随机生成数据并用动态展示数据结果。 先…

自学 Java 怎么入门?

关于自学 Java 如何入门这一重要课题,在此为大家进行详细阐述。 在此之前,如果大家有兴趣的话,可以看看我自己精心整理的嵌入式入门资料,这些资料将全部免费送给大家。其中包含了编程教学内容、详细的视频讲解、实用的数据库资料…

Vue 实例

一、页面效果图 二、代码 <!DOCTYPE html> <html><head><meta charset"utf-8"><script src"../vue.js" type"text/javascript"></script><title>vue 实例</title></head><body>&l…

Linux命令篇(一):文件管理部分

&#x1f49d;&#x1f49d;&#x1f49d;首先&#xff0c;欢迎各位来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里不仅可以有所收获&#xff0c;同时也能感受到一份轻松欢乐的氛围&#xff0c;祝你生活愉快&#xff01; 文章目录 1、cat命令常用参…

HALCON-从入门到入门-图像格式的互相转换

1.废话 上次说到了图片的读取和写入到本地&#xff0c;这次说一下图片的格式相关。 位图和矢量图 photoshop处理出来的图片肯定叫做图片&#xff0c;那么coreDraw处理出来的图片是不是也叫图片。 之间就有区分&#xff0c;一种叫做位图&#xff0c;一种叫做矢量图 位图和矢…

创建一个支持切换阅读模式和答题模式的Anki问答题模板

为了备考某个需要默写的科目&#xff0c;做了个问答题笔记模板&#xff0c;如下&#xff1a; 在上图的回答栏填写答案后&#xff0c;点击显示答案按钮转到背面&#xff1a; 只实现上面的功能是很简单的&#xff0c;直接基于Anki自带的问答题模板添加自己需要的字段即可。问题…

基于卷积-小波神经网络的SAR图像海冰变化检测方法(MATLAB R2018A)

海冰是冰冻圈的重要组成部分&#xff0c;海冰的变化信息对航行安全和自然资源开采等非常重要&#xff0c;许多船舶没有加固防冰设备&#xff0c;因此&#xff0c;必须避开所有的冰区。尤其当冰压很高时&#xff0c;即使破冰船也很难在冰层中前行。为了安全航行&#xff0c;获取…

自动化办公01 smtplib 邮件⾃动发送

目录 一、准备需要发送邮件的邮箱账号 二、发送邮箱的基本步骤 1. 登录邮箱 2. 准备数据 3. 发送邮件 三、特殊内容的发送 1. 发送附件 2. 发送图片 3. 发送超文本内容 4.邮件模板内容 SMTP&#xff08;Simple Mail Transfer Protocol&#xff09;即简单邮件传输协议…

天气数据集-Jena Climate dataset

天气数据集-Jena Climate dataset 1.数据集基本信息 Dataset Name: mpi_saale_2021b.csv Size: 26495 rows; 1 year (2021), 10 min 气象学、农业、环境科学 开源机构: Max Planck Institute for Biogeochemistry 2.数据特征 2.1 特征简介 数据共有31个特征&#xff0c;…

使用 Scapy 库编写 Ping of Death 攻击脚本

一、介绍 1.1 概述 Ping of Death&#xff08;PoD&#xff09;攻击是一种历史悠久的拒绝服务&#xff08;DoS&#xff09;攻击&#xff0c;攻击者通过发送特制的畸形ICMP Echo请求数据包&#xff0c;导致目标系统无法正确处理&#xff0c;从而导致系统崩溃、重启或无法响应正…

【最新鸿蒙应用开发】——什么是状态管理?

状态管理 在声明式UI编程框架中&#xff0c;UI是程序状态的运行结果&#xff0c;用户构建了一个UI模型&#xff0c;其中应用的运行时的状态是参数。当参数改变时&#xff0c;UI作为返回结果&#xff0c;也将进行对应的改变。这些运行时的状态变化所带来的UI的重新渲染&#xf…

【Postman接口测试】第四节.Postman接口测试项目实战(上)

文章目录 前言一、项目介绍 1.1 项目界面功能介绍 1.2 项目测试接口介绍 1.3 项目测试接口流程二、HTTP协议三、接口测试中接口规范四、项目合同新增业务介绍 4.0 接口测试用例设计流程 4.1 登录接口调试 4.2 登录接口自动关联 4.3 添加…

攻防世界---web---Web_php_unserialize

1、题目描述 2、 3、分析代码 class Demo { private $file fl4g.php; }&#xff1a;定义了一个名为Demo的类&#xff0c;该类有一个私有属性$file&#xff0c;默认值为fl4g.php。 $a serialize(new Demo);&#xff1a;创建了一个Demo类的实例&#xff0c;并对其进行序列化&a…

【机器学习】基于OpenCV和TensorFlow的MobileNetV2模型的物种识别与个体相似度分析

在计算机视觉领域&#xff0c;物种识别和图像相似度比较是两个重要的研究方向。本文通过结合深度学习和图像处理技术&#xff0c;基于OpenCV和TensorFlow的MobileNetV2的预训练模型模&#xff0c;实现物种识别和个体相似度分析。本文详细介绍该实验过程并提供相关代码。 一、名…

eNSP学习——VRRP基础配置

目录 主要命令 原理概述 实验目的 实验内容 实验拓扑 实验编址 实验步骤 1、基本配置 2、部署OSPF网络 3、配置VRRP协议 4、验证VRRP主备切换 主要命令 //创建备份组 [R2]int g0/0/1 [R2-GigabitEthernet0/0/1]vrrp vrid 1 virtual-ip 192.168.1.254 //修改优先级 …

自动评论自动私信引流系统,自动化时代的挑战与机遇

随着科技的飞速发展&#xff0c;自动化技术已经渗透到我们生活的方方面面。从工业生产线上的机械臂到家庭中的智能助手&#xff0c;自动化不仅改变了我们的工作方式&#xff0c;也在重塑着社会的面貌。然而&#xff0c;在享受自动化带来的便利和效率的同时&#xff0c;我们也必…

Java实现对PDF、纵向、横向页面添加自定义水印功能

Java实现对PDF、纵向、横向页面添加自定义水印 效果图 -- 纵向 页面PDF使用到JAR Maven依赖版本效果图 -- 横向页面PDF 效果图 – 纵向 页面PDF 代码如下&#xff1a; 使用到JAR Maven依赖版本 <dependency><groupId>org.apache.pdfbox</groupId><artifa…

FLINK-窗口算子

参考资料 官方文档- WindowFlink中的时间和窗口之窗口 窗口 在流处理中&#xff0c;我们往往需要面对的是连续不断、无休无止的无界流&#xff0c;不可能等到所有所有数据都到齐了才开始处理。所以聚合计算其实只能针对当前已有的数据——之后再有数据到来&#xff0c;就需要继…

【计算机毕设】SpringBoot校园资料分享平台的设计与实现 - 源码免费(私信领取)

免费领取源码 &#xff5c; 项目完整可运行 &#xff5c; v&#xff1a;chengn7890 诚招源码校园代理&#xff01; 1. 研究目的 本项目旨在设计并实现一个基于SpringBoot的校园资料分享平台&#xff0c;以满足学生在学习过程中对资料分享和获取的需求。具体目标包括&#xff1a…