Java中String类的常见操作Api

news2024/10/9 11:17:34

目录

String类的常见操作

1).int indexOf (char 字符)

2).int lastIndexOf(char 字符)

3).int indexOf(String 字符串) 

4).int lastIndexOf(String 字符串)

5).char charAt(int 索引)

6).Boolean endWith(String 字符串)

7).int length() 

8).boolean equals(T 比较对象)

9).boolean startWith(String 字符串)

10).boolean contains(String 字符串)

11).String toLowerCase()

12).String toUpperCase()

13).static String valueOf(int number)

14).char[] toCharArray()  

15).String replace(String 原来字符串包含的字符,String 替换旧字符串的字符)

16).String[] split(String 根据这个字符串分割的字符 )

17).String substring(int 开始索引)

18).String substring(int 开始索引,int 结束索引)

19).String trim() 

20.案例:字符串获取功能

1.代码

2.效果

21.案例:字符串的转化操作

1.代码

2.效果

22.案例:字符串的替换和去除空格

1.代码

2.效果

23.字符串的判断

1.代码

2.效果

24.字符串的分割和截取

1.代码

2.效果


String类的常见操作

1).int indexOf (char 字符)

  • 返回指定字符在字符串中第一次出现的位置索引。如果未找到该字符,则返回-1。
  • 示例:"Hello".indexOf('l') 返回 2。

2).int lastIndexOf(char 字符)

  • 返回指定字符在字符串中最后一次出现的位置索引。如果未找到该字符,则返回-1。
  • 示例:"Hello".lastIndexOf('l') 返回 3。

3).int indexOf(String 字符串) 

  • 返回指定子字符串在字符串中第一次出现的位置索引。如果未找到该子字符串,则返回-1。
  • 示例:"Hello World".indexOf("World") 返回 6。

4).int lastIndexOf(String 字符串)

  • 返回指定子字符串在字符串中最后一次次出现的位置索引。如果未找到该子字符串,则返回-1。
  • 示例:"Hello World".indexOf("World") 返回 6。

5).char charAt(int 索引)

  • 返回指定索引处的字符。索引从0开始。
  • 示例:"Hello".charAt(1) 返回 'e'。

6).Boolean endWith(String 字符串)

  • 判断此字符串是否以指定的后缀结束。
  • 示例:"Hello".endsWith("lo") 返回 true。

7).int length() 

  • 返回字符串中的字符数。
  • 示例:"Hello".length() 返回 5。

8).boolean equals(T 比较对象)

  • 将此字符串与另一个对象比较。当且仅当该对象也是一个字符串,并且它表示与此对象相同的字符序列时,结果为true。
  • 示例:"Hello".equals("Hello") 返回 true。

9).boolean startWith(String 字符串)

  • 判断此字符串是否以指定的前缀开始。
  • 示例:"Hello".startsWith("He") 返回 true。

10).boolean contains(String 字符串)

  • 当且仅当此字符串包含指定的char值序列时,返回true。
  • 示例:"Hello".contains("el") 返回 true。

11).String toLowerCase()

  • 将所有字符转换成小写。
  • 示例:"Hello".toLowerCase() 返回 "hello"。

12).String toUpperCase()

  • 将所有字符转换成大写。
  • 示例:"hello".toUpperCase() 返回 "HELLO"。

13).static String valueOf(int number)

  • 返回给定int参数的字符串表示形式。
  • 示例:String.valueOf(123) 返回 "123"。

14).char[] toCharArray()  

  • 将此字符串转换为一个新的字符数组。
  • 示例:"Hello".toCharArray() 返回一个包含 'H', 'e', 'l', 'l', 'o' 的字符数组。

15).String replace(String 原来字符串包含的字符,String 替换旧字符串的字符)

  • 返回一个新的字符串,它是通过用替换序列替换此字符串中每个目标序列得到的。
  • 示例:"Hello World".replace("World", "Java") 返回 "Hello Java"。

16).String[] split(String 根据这个字符串分割的字符 )

  • 根据匹配给定正则表达式的分隔符将此字符串拆分为子字符串。
  • 示例:"one,two,three".split(",") 返回一个包含 "one", "two", "three" 的字符串数组。

17).String substring(int 开始索引)

  • 返回一个新字符串,它是此字符串的一个子字符串,从指定的beginIndex开始直到字符串的末尾。
  • 示例:"Hello".substring(2) 返回 "llo"。

18).String substring(int 开始索引,int 结束索引)

  • 返回一个新字符串,它是此字符串的一个子字符串,从指定的beginIndex开始到endIndex结束(不包括endIndex)。
  • 示例:"Hello".substring(1, 4) 返回 "ell"。

19).String trim() 

  • 返回一个新字符串,其值为此字符串删除任何前导和尾随空格后的副本。
  • 示例:" Hello ".trim() 返回 "Hello"。

20.案例:字符串获取功能

1.代码

package org.xiji.mystring;

public class GetMyString
{
    public static void main(String[] args) {

        String myString  =  "myFirstString";

        //获取字符串的长度
        System.out.println("字符串的长度是:" + myString.length());

        //获取索引为三的字符
        System.out.println("索引为三的字符是:" + myString.charAt(3));

        //获取S第一次出现的位置
        System.out.println("S第一次出现的位置是:" + myString.indexOf("S"));
        //获取S最后一次出现的位置
        System.out.println("S最后一次出现的位置是:" + myString.lastIndexOf("S"));

        //获取ir第一次出现的位置
        System.out.println("ir第一次出现的位置是:" + myString.indexOf("ir"));
        //获取ir最后一次出现的位置
        System.out.println("ir最后一次出现的位置是:" + myString.lastIndexOf("ir"));
    }
}

2.效果

21.案例:字符串的转化操作

1.代码

package org.xiji.mystring;

/**
 * 字符串转化
 */
public class MyStringTo {

    public static void main(String[] args) {
        String myString = "myFirstString";

        //字符串分割
        char[] myStringArray = myString.toCharArray();

        //for循环遍历
        for (char s : myStringArray) {
            System.out.println(s);
        }

        System.out.println("全部转换为小写");
        String s = myString.toLowerCase();
        System.out.println(s);


        System.out.println("全部转换为大写");
        String s1 = myString.toUpperCase();
        System.out.println(s1);

        //


    }
}

2.效果

22.案例:字符串的替换和去除空格

1.代码

package org.xiji.mystring;

/**
 * 替换字符,和去除空客
 */
public class MySpace {
    public static void main(String[] args) {
        String str = "  hello  world  ";
        //字符串替换
        System.out.println("字符串替换");
        System.out.println(str.replace(" ","-"));

        //字符串去除空格
        System.out.println("字符串去除空格");
        System.out.println(str.trim());
    }
}

2.效果

可以看到空格已经被替换,并且可以去除两边的空格,

注:替换空格,和去除空格只是生成了新的字符串,并不会操作原来的字符串

23.字符串的判断

1.代码

package org.xiji.mystring;

/**
 * 字符串的判断操作
 */
public class MyStringP {

    public static void main(String[] args)
    {
        String str = "mySecondString";
        System.out.println("字符串是否以my开头:" + str.startsWith("my"));
        System.out.println("字符串是否以String结尾:" + str.endsWith("String"));
        System.out.println("字符串是否包含second:" + str.contains("second"));
        System.out.println("字符串是否为空:" + str.isEmpty());
    }
}

2.效果

24.字符串的分割和截取

1.代码

package org.xiji.mystring;

/**
 * 字符串分割
 */
public class MyStringSub
{
    public static void main(String[] args)
    {
        String my = "my-first-string";

        //字符串以-分割
        String[] split = my.split("-");
        for (int i = 0; i < split.length; i++) {
            //输出分割
            System.out.println(split[i]);
        }
        System.out.println("分割后,字符串长度:"+split.length);


        //截取字符串
        System.out.println("截取字符串");
        String substring = my.substring(5);
        System.out.println(substring);

        System.out.println("截取字符串,从第5个开始,到第9个");
        String substring1 = my.substring(5, 9);
        System.out.println(substring1);
    }
}

2.效果

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

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

相关文章

【2024】作为前端开发,必须掌握的 Vue3 的 5 个组合式 API 方法

引言&#xff1a;2024 你还不知道 Vue3 的 defineProps、defineEmits、defineExpose、defineOptions 和 defineSlots 吗&#xff1f;这几个 Vue3 组合式 API 方法不仅开发常用&#xff08;涉及组件通信、组件复用等&#xff09;&#xff0c;在面试中也是不可或缺的一部分&#…

SpringBoot实现电子文件签字+合同系统!

一、前言 二、项目源码及部署 1、项目结构及使用框架 2、项目下载及部署 三、功能展示 一、前言 今天公司领导提出一个功能,说实现一个文件的签字+盖章功能,然后自己进行了简单的学习,对文档进行数字签名与签署纸质文档的原因大致相同,数字签名通过使用计算机加密来验证 (…

LabVIEW提高开发效率技巧----阻塞时钟

在LabVIEW开发中&#xff0c;阻塞时钟&#xff08;Blocking Timed Loops&#xff09;是一种常见且强大的技术&#xff0c;尤其适用于时间关键的应用。在这些应用中&#xff0c;精确控制循环的执行频率是关键任务。阻塞时钟通过等待循环的执行完成后再进入下一次迭代&#xff0c…

鸿蒙 Next 实战: 烟花模拟器

前言 通过上一篇文章可以看出&#xff0c;要在鸿蒙应用中实现特别炫的特效还是比较复杂。动画固然重要&#xff0c;但如果在赶工期的情况下&#xff0c;大家都会优先业务&#xff0c;那有没有简单快速的方法呢&#xff1f; 有的&#xff0c;也用像 Android 和 iOS 里 WebView …

.Net Core 接口或网站发布到IIS

将.Net Core 接口或网站发布到IIS上&#xff0c;需要遵循一系列步骤来确保正确配置和部署。下面将以.NET Core 3.1的api接口发布示范&#xff1a; 一、环境准备 安装.NET Core 3.1 SDK和运行时&#xff1a; 在服务器上安装.NET Core 3.1 SDK&#xff08;如果需要在服务器上编译…

宝兰德亮相2024国际信息通信展:数智创新,信创力量!

9月25日-27日&#xff0c;2024中国国际信息通信展览会在北京国家会议中心隆重召开。本届展会以“推动数实深度融合&#xff0c;共筑新质生产力”为主题&#xff0c;全面展示信息通信业发展最新成果。作为国内领先的基础软件供应商&#xff0c;宝兰德再度闪耀会场&#xff0c;在…

[ROS】rqt工具箱

作用&#xff1a; 可以方便的实现 ROS 可视化调试&#xff0c;并且在同一窗口中打开多个部件&#xff0c;提高开发效率&#xff0c;优化用户体验。 组成&#xff1a; rqt工具箱组成有三大部分 rqt 核心实现&#xff0c;开发人员无需关注 rqt_common_plugins rqt…

Gated Transformer Networks for Multivariate Time Series Classification

博客贡献人 徐宁 作者 Minghao Liu , Shengqi Ren , Siyuan Ma , Jiahui Jiao , Yizhou Chen , Zhiguang Wang(Facebook AI) and Wei Song∗ 标签 多元时间序列分类&#xff0c;Transformer&#xff0c;门控 摘要 用于时间序列分类的深度学习模型&#xff08;主要是卷积网…

GO网络编程(七):海量用户通信系统5:分层架构

P323开始&#xff08;尚硅谷GO教程&#xff09;老韩又改目录结构了&#xff0c;没办法&#xff0c;和之前一样&#xff0c;先说下目录结构&#xff0c;再给代码&#xff0c;部分代码在之前讲过&#xff0c;还有知识的话由于本人近期很忙&#xff0c;所以这些就不多赘述了&#…

【源码+文档】基于SpringBoot+Vue的健康宝个人健康管理平台

一、项目技术架构&#xff1a; 本项目是一款基于SpringBootVue的个人健康信息管理系统。后端采用SpringBoot架构&#xff0c;前端采用VueElementUI实现页面的快速开发&#xff0c;并使用关系型数据库MySQL存储系统运行数据。本系统分为两种角色&#xff0c;分别是系统管理员&a…

DS入门引言(0)

文章目录 前言一、什么是数据结构&#xff1f;二、什么是算法&#xff1f;三、数据结构与算法的重要性&#xff1f;四、如何学习它们&#xff1f;总结 前言 是的&#xff0c;我又开了一个专栏&#xff0c;数据结构&#xff08;Data Structure&#xff09;&#xff0c;其实数据结…

【人工智能】AI人工智能的重要组成部分,深入解析CNN与RNN两种神经网络的异同与应用场景和区别

文章目录 一、卷积神经网络&#xff08;CNN&#xff09;详解1. 特征与结构CNN的基本结构 2. 应用场景3. 代码示例 二、循环神经网络&#xff08;RNN&#xff09;详解1. 网络结构与特点RNN的基本结构 2. 应用场景3. 代码示例 三、CNN与RNN的异同点1. 相同点2. 不同点 四、CNN与R…

javascript 阿里云,如何返回某个目录的文件

一、效果图 二、实际代码 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>阿里云 OSS 文件列表&…

合约测试用例详解

合约测试的综合案例 第一部分 压力测试(使用caliper工具测试) 1.环境要求 配置基本环境 部署Caliper的计算机需要有外网权限;操作系统版本需要满足以下要求:Ubuntu >= 16.04、CentOS >= 7或MacOS >= 10.14;部署Caliper的计算机需要安装有以下软件:python 2.7…

PMP--冲刺题--解题--91-100

文章目录 11.风险管理--4.实施定量风险分析--题干场景中提到了“专家”&#xff0c;同时即将开始“量化风险”&#xff0c;因此对应的就是“定量风险分析”中的“专家判断”技术。项目经理应先征求各位专家们的意见&#xff0c;以获取最佳的量化风险实施方案。谋定而后动91、 […

wordpress发邮件SMTP服务器配置步骤指南?

wordpress发邮件功能如何优化&#xff1f;怎么用wordpress发信&#xff1f; 由于WordPress默认的邮件发送功能可能不够稳定&#xff0c;配置SMTP服务器成为了许多网站管理员的选择。AokSend将详细介绍如何在WordPress中配置SMTP服务器&#xff0c;以确保邮件能够顺利发送。 w…

Linux-磁盘优化的几个思路

优化前先看看性能指标 I/O 基准测试 fio&#xff08;Flexible I/O Tester&#xff09;正是最常用的文件系统和磁盘 I/O 性能基准测试工具。这类工具非常用&#xff0c;了解即可 应用程序优化 应用程序处于整个 I/O 栈的最上端&#xff0c;它可以通过系统调用&#xff0c;来调…

可持续边缘计算:挑战与未来方向

论文标题&#xff1a;Sustainable edge computing: Challenges and future directions 中文标题&#xff1a;可持续边缘计算&#xff1a;挑战与未来方向 作者信息&#xff1a; Patricia Arroba, Department of Electronic Engineering, Universidad Politcnica de Madrid, Ma…

CANLogFD-ER2数据记录仪数据记录与导出教程

CANLogFD-ER2数据记录仪数据记录与导出教程 VBDSP下载地址&#xff1a; www.njlike.com 数据下载操作视频&#xff1a; 一、引脚定义与指示灯状态 二、设备接线 电脑可以通过网口或WiFi与设备连接&#xff1b;短接通道CAN_H引脚和CAN_R引脚可使能终端电阻。设备接入CAN总线…