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));
    }

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

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

相关文章

JVM(5)面试篇

1 什么是JVM? 关联课程内容 基础篇-初识JVM基础篇-Java虚拟机的组成 回答路径 JVM的定义作用功能组成 1、定义: JVM 指的是Java虚拟机( Java Virtual Machine )。JVM 本质上是一个运行在计算机上的程序,他的职责是…

ArduPilot开源飞控之硬件SBC分析

ArduPilot开源飞控之硬件SBC分析 1. 源由2. Companion Computer2.1 APSync【不推荐,无更新】2.2 DroneKit【不推荐,无更新/SDK】2.3 FlytOS【不推荐,闭源】2.4 Maverick【不推荐,闭源】2.5 ROS【专门讨论,开源/复杂】2…

C/C++重点解析——内存管理

1. C/C内存分布 我们先来看一段代码和其相关问题: int globalVar 1; static int staticGlobalVar 1; void Test() {static int staticVar 1;int localVar 1;int num1[10] { 1, 2, 3, 4 };char char2[] "abcd";const char* pChar3 "abcd"…

HGAME2024 WEEK2 wp webmisc

web What the cow say? 进入容器有个输入框,尝试ssti、命令执行、代码执行等,最后发现可使用反引号执行命令; 输入 nl app.py 可查看源代码,有功能具体实现、过滤之类的; flag在 /flag_is_here home/flag_c0w54y 中…

【NLP】MHA、MQA、GQA机制的区别

Note LLama2的注意力机制使用了GQA。三种机制的图如下: MHA机制(Multi-head Attention) MHA(Multi-head Attention)是标准的多头注意力机制,包含h个Query、Key 和 Value 矩阵。所有注意力头的 Key 和 V…

AI中的直方图均衡

目标 在本教程中,您将学习: 什么是图像直方图以及它为什么有用使用 OpenCV 函数 cv::equalizeHist 均衡图像的直方图 理论 什么是图像直方图? 它是图像强度分布的图形表示。它量化了所考虑的每个强度值的像素数。…

搜索专项---最短路模型

文章目录 迷宫问题武士风度的牛抓住那头牛 一、迷宫问题OJ链接 本题思路:只需要记录各个点是有哪个点走过来的,就能递推得出路径。记录前驱假设从 1,1 这个点向下走到了2, 1,则将2,1这个点的前驱记为1,1。这样,将整张地图 bfs 后&#xff0c…

[嵌入式系统-14]:常见实时嵌入式操作系统比较:RT-Thread、uC/OS-II和FreeRTOS、Linux

目录 一、实时嵌入式操作系统 1.1 概述 1.2 什么“实时” 1.3 什么是硬实时和软实时 1.4 什么是嵌入式 1.5 什么操作系统 二、常见重量级操作系统 三、常见轻量级嵌入式操作系统 3.1 概述 3.2 FreeRTOS 3.3 uC/OS-II 3.4 RT-Thread 3.5 RT-Thread、uC/OS-II、Free…

LGAMEFI基于BPL公链开发的第一生态:开启RWA游戏娱乐与DeFi融合的新纪元

在去中心化金融(DeFi)与游戏娱乐的结合趋势中,BPL公链上的LGAMEFI项目代表了前沿的技术革新和市场领导。这种将web2上成熟页游进行RWA链改,不仅仅是将游戏热门领域融合,更是在寻找一种全新的参与者经验,将玩…

Pod 和容器的设计模型

一、为什么需要 Pod: 1、容器的基本概念: 容器的本质实际上是一个进程,是一个视图被隔离,资源受限的进程。容器里面 PID1 的进程就是应用本身,这意味着管理虚拟机等于管理基础设施,但管理容器却等于直接管…

拿捏单链表

目录 引言 一:链表的定义 二:单链表的定义 三:单链表的增删查改 1.单链表增删查改及遍历的声明 注:在测试中创建指向头结点的指针plist 2.二级指针应用的说明 3.单链表的遍历 4.创建节点 5.单链表的插入 (1)头插 …

Linux操作系统——命名管道

我们前面说的管道都是只能具有血缘关系的进程进行进程间通信,如果我想让两个毫不相干的进程进行通信呢?那就需要来谈谈命名管道了。 命名管道 管道应用的一个限制就是只能在具有共同祖先(具有亲缘关系)的进程间通信。如果我们想…

软考 系统分析师系列知识点之信息系统战略规划方法(11)

接前一篇文章:软考 系统分析师系列知识点之信息系统战略规划方法(10) 所属章节: 第7章. 企业信息化战略与实施 第4节. 信息系统战略规划方法 7.4.7 价值链分析法 价值链分析(Value Chain Analysis,VCA&am…

【C++】---类和对象(中)默认成员函数 和 操作符重载

前言: 假如一个类中既没有成员变量也没有成员函数,那么这个类就是空类,空类并不是什么都没有,因为所有类都会生成如下6个默认成员函数: 一、构造函数 1、构造函数的定义及其特性 对于日期类对象,我们可…

pytest教程-10-allue2生成html报告

领取资料,咨询答疑,请➕wei: June__Go 上一小节我们学习了pytest-html生成html报告的方法,本小节我们讲解一下使用allue2生成html报告。 自动化测试执行完成后我们需要展示给其他人看,这就要有自动化测试报告了。复杂的测试报告…

稳态准直太阳光模拟器

概述 稳态准直太阳光模拟器是一种用于模拟太阳光的设备。它能够产生高强度、高稳定性的太阳光,用于太阳能电池、太阳能热利用等领域的研究和实验。 稳态准直太阳光模拟器通常由以下几个部分组成: 光源:采用强度和颜色温度与太阳光接近的光源…

Rust 语言学习杂谈 (end) (各种工作中遇到的疑难杂症)

1.在运行 “cargo build --release” 的时候,到底发生了什么? 源 (GPT4.0) : 当我们运行 cargo build --release 命令时,实际上在进行一系列复杂的步骤来编译和构建 Rust 项目的发布版本。这个过程大致可以分解为以下几个步骤:…

2024年【危险化学品经营单位安全管理人员】考试报名及危险化学品经营单位安全管理人员考试资料

题库来源:安全生产模拟考试一点通公众号小程序 危险化学品经营单位安全管理人员考试报名是安全生产模拟考试一点通总题库中生成的一套危险化学品经营单位安全管理人员考试资料,安全生产模拟考试一点通上危险化学品经营单位安全管理人员作业手机同步练习…

基于GPT一键完成数据分析全流程的AI Agent: Streamline Analyst

大型语言模型(LLM)的兴起不仅为获取知识和解决问题开辟了新的可能性,而且催生了一些新型智能系统,例如旨在辅助用户完成特定任务的AI Copilot以及旨在自动化和自主执行复杂任务的AI Agent,使得编程、创作等任务变得高效…

单片机学习笔记---直流电机驱动(PWM)

直流电机介绍 直流电机是一种将电能转换为机械能的装置。一般的直流电机有两个电极,当电极正接时,电机正转,当电极反接时,电机反转 直流电机主要由永磁体(定子)、线圈(转子)和换向器…