当前位置: 首页 > news >正文

java之字符串常用处理函数

在Java中,你可以使用Collections.sort()方法对字符串中的字符进行排序。这个方法会按照字母顺序对字符进行排序。

以下是一个例子:

import java.util.Arrays;  
import java.util.Collections;    
public class Main {      public static void main(String[] args) {          String str = "hello world";          char[] c = str.toCharArray();Arrays.sort(c);String sortedStr = new String(c);          System.out.println(sortedStr);     }  
}

字符串的常用函数

1、charAt(int index) 返回指定索引位置的字符。
String str = "Hello, World!";  
char charAt2 = str.charAt(2); // 返回字符 'l'  
2、length() 返回字符串的长度。
String str = "Hello, World!";  
int length = str.length(); // 返回13,因为字符串 "Hello, World!" 有13个字符  
3、substring(int beginIndex, int endIndex) 返回从beginIndex到endIndex(不含endIndex)之间的子字符串。
String str = "Hello, World!";  
String substring = str.substring(0, 5); // 返回从索引0到4(不包括5)的子字符串 "Hello"  
4、indexOf(String substring) 返回子字符串第一次出现的索引,如果未找到则返回-1。
String str = "Hello, World!";  
int indexOfWorld = str.indexOf("World"); // 返回7,因为 "World" 第一次出现在索引7的位置
5、lastIndexOf(String substring) 返回子字符串最后一次出现的索引,如果未找到则返回-1,也可以传入单个字符。
String str = "Hello, World!"; 
int lastIndexOfWorld = str.lastIndexOf("World"); // 返回12,因为 "World" 最后出现在索引12的位置 
6、equals(Object anObject) 比较两个字符串的内容是否相同。
String str1 = "Hello";  
String str2 = "Hello";  
boolean isEqual = str1.equals(str2); // 返回true,因为两个字符串的内容相同 
7、equalsIgnoreCase(String anotherString) 忽略大小写比较两个字符串的内容是否相同。
String str1 = "Hello";  
String str2 = "HELLO";  
boolean isEqualIgnoreCase = str1.equalsIgnoreCase(str2); // 返回true,因为忽略了大小写,两个字符串的内容相同
8、startsWith(String prefix) 测试字符串是否以指定的前缀开始。
String str = "Hello, World!";  
boolean isStartsWith = str.startsWith("Hello"); // 返回true,因为字符串"Hello, World!"以"Hello"开始 
9、endsWith(String suffix) 测试字符串是否以指定的后缀结束。
String str = "Hello, World!";  
boolean isEndsWith = str.endsWith("World!"); // 返回true,因为字符串"Hello, World!"以"World!"结束 
10、replace(char oldChar, char newChar) 替换字符串中的所有指定字符。
String str = "Hello, World!";  
String replacedStr = str.replace('o', 'a'); // 将所有的'o'替换为'a'  
System.out.println("Replaced string: " + replacedStr); // 输出: "Hella, Warld!"
11、toLowerCase() 将所有字符转换为小写。
String str = "Hello World!";  
String lowerCaseStr = str.toLowerCase(); // 将所有字符转换为小写  
System.out.println(lowerCaseStr); // 输出: hello world!
12、toUpperCase() 将所有字符转换为大写。
String str = "Hello World!";  
String upperCaseStr = str.toUpperCase(); // 将所有字符转换为大写  
System.out.println(upperCaseStr); // 输出: HELLO WORLD!
13、trim() 去除字符串首尾的空白字符。
String str = " Hello World! ";  
String trimmedStr = str.trim(); // 去除字符串首尾的空白字符  
System.out.println(trimmedStr); // 输出: Hello World!
14、replaceFirst(String regex, String replacement) 替换第一次出现的指定字符串。或使用给定的正则表达式替换此字符串中第一次出现的匹配内容。
String str = "Hello World!";  
String replacedStr = str.replaceFirst("o", "a"); // 替换第一次出现的'o'为'a'  
System.out.println(replacedStr); // 输出: Hella World!String s = "Hello World";  
String replaced = s.replaceFirst("[a-z]", "a");  // replaced 将变成 "Haaa Waa"
15、replaceAll(String regex, String replacement) 替换所有出现的指定字符串。或使用给定的正则表达式替换此字符串中所有出现的匹配内容。
String str = "Hello World!";  
String replacedStr = str.replaceAll("o", "a"); // 替换所有出现的'o'为'a'  
System.out.println(replacedStr); // 输出: Hella Warld!String s = "Hello World";  
String replaced = s.replaceAll("[a-z]", "a");  // replaced 将变成 "Haaaaa Waaaaa"
16、split(String regex) 根据给定的正则表达式来分割字符串。
String str = "Hello, World!";  
String[] parts = str.split(", "); // 根据逗号和空格分割字符串  
System.out.println(Arrays.toString(parts)); // 输出: [Hello, World!]
17、将字符串转换为一个字符数组
String str = "Hello, World!";  
char[] charArray = str.toCharArray(); 
18、concat(String str):将指定字符串连接到此字符串的末尾。
String s1 = "Hello";  
String s2 = " World";  
s1 = s1.concat(s2);  // s1 现在变成了 "Hello World"
19、indexOfFirstNonSpace():返回第一个非空格字符的索引,如果没有则返回-1。
String s = "  Hello World  ";  
int index = s.indexOfFirstNonSpace();  // index 将变成 3,因为第一个非空格字符是 'H',其索引是 3
20、indexOfLastNonSpace():返回最后一个非空格字符的索引,如果没有则返回-1。
String s = "  Hello World  ";  
int index = s.indexOfLastNonSpace();  // index 将变成 7,因为最后一个非空格字符是 'W',其索引是 7
21、matches(String regex):测试此字符串是否匹配指定的正则表达式。
String s = "12345";  
boolean matches = s.matches("[0-9]+");  // matches 将变成 true,因为 s 只包含数字字符
22、contains(CharSequence s):测试此字符串是否包含指定的子序列。
String s = "Hello World";  
boolean contains = s.contains("World");  // contains 将变成 true,因为 s 包含 "World" 子序列

相关文章:

java之字符串常用处理函数

在Java中,你可以使用Collections.sort()方法对字符串中的字符进行排序。这个方法会按照字母顺序对字符进行排序。 以下是一个例子: import java.util.Arrays; import java.util.Collections; public class Main { public static void main(…...

【XILINX】ERROR:Place:1136 - This design contains a global buffer instance

记录一个ISE软件使用过程中遇到的问题及解决方案。 芯片:spartan6 问题 ERROR:Place:1136 - This design contains a global buffer instance, , driving the net,>, that is driving the following (first 30) non-clock load pins. This is not a recommended…...

【文件上传系列】No.0 利用 FormData 实现文件上传、监控网路速度和上传进度(原生前端,Koa 后端)

利用 FormData 实现文件上传 基础功能:上传文件 演示如下: 概括流程: 前端:把文件数据获取并 append 到 FormData 对象中后端:通过 ctx.request.files 对象拿到二进制数据,获得 node 暂存的文件路径 前端…...

web前端之JavaScrip的笔试题

MENU Promise笔试题-02prototype和__proto__的笔试题JavaScript引用类型值值操和运算符优先级比较--笔试原型与原型链--笔试-05作用域-笔试事件队列-笔试题JavaScript之变量提升-笔试题JavaScript之原型链--笔试题 Promise笔试题-02 console.log(1); // 宏仁务 2 setTimeout(_…...

生活、工作常用API免费接口

身份证识别OCR:传入身份证照片,识别照片文字信息并返回,包括姓名、身份证号码、性别、民族、出生年月日、地址、签发机关及有效期。二维码识别OCR:对图片中的二维码、条形码进行检测和识别,返回存储的文字内容。银行卡…...

PHP使用mkcert本地开发生成HTTPS证书 PhpEnv集成环境

PHP使用mkcert本地开发生成HTTPS证书 PhpEnv集成环境 前言一、介绍 mkcert二、安装/使用 mkcert1. 安装2. 使用 总结 前言 本地开发时有些功能只有在 https 证书的情况下才能使用, 例如一些 Web API 一、介绍 mkcert Github地址 mkcert 是一个制作本地可信开发证书的简单工具。…...

DHTMLX Scheduler PRO 6.0.5 Crack

功能丰富的 JavaScript调度程序 DHTMLX Scheduler 是一个 JavaScript 日程安排日历,具有 10 个视图和可定制的界面,用于开发任何类型的日程安排应用程序。 DHTMLX JS 调度程序库的主要特性 我们的 JS 调度程序最需要的功能之一是时间轴视图。借助时间轴…...

AddressSanitizer和LeakSanitizer有什么区别

AddressSanitizer(ASan)和LeakSanitizer(LSan)都是用于内存错误检测的工具,它们的主要区别在于检测的问题类型和应用场景。 AddressSanitizer(ASan): ASan是一种用于检测内存错误的工具&#xf…...

CoreDNS实战(二)-CoreDNS+ETCD实现DNS服务发现

1 引言 在前面的文章中讲了如何搭建一个内网的DNS服务,但是这里有个问题,mxsm-register.local表示局域网的注册中心域名,如果需要将每台部署了注册中心的IP地址写到CoreDNS的配置文件中。这样就需要每次都去修改 Corefile 配置文件。那有没有…...

B站缓存视频M4S合并MP4(js + ffmpeg )

文章目录 B站缓存视频转MP4(js ffmpeg )1、说明 2、ffmpeg2.1 下载地址2.2 配置环境变量2.3 测试2.4 转换MP4命令 3、处理程序 B站缓存视频转MP4(js ffmpeg ) 注意:这样的方式只用于个人之间不同设备的离线观看。请…...

学习IO的第四天

作业 : 使用两个子进程完成两个文件的拷贝&#xff0c;子进程1拷贝前一半内容&#xff0c;子进程2拷贝后一般内容&#xff0c;父进程用于回收两个子进程的资源 #include <head.h>int main(int argc, const char *argv[]) {int rd -1;if((rdopen("./01_test.c&quo…...

Linux:缓冲区的概念理解

文章目录 缓冲区什么是缓冲区&#xff1f;缓冲区的意义是什么&#xff1f;缓冲区的刷新方式 理解缓冲区用户缓冲区和内核缓冲区缓冲区在哪里&#xff1f; 本篇主要总结的是关于缓冲区的概念理解&#xff0c;以及再次基础上对文件的常用接口进行一定程度的封装 缓冲区 什么是缓…...

中山大学李华山、王彪课题组开发 SEN 机器学习模型,高精度预测材料性能

内容一览&#xff1a;了解全局晶体对称性并分析等变信息&#xff0c;对于预测材料性能至关重要&#xff0c;但现有的、基于卷积网络的算法尚且无法完全实现这些需求。针对于此&#xff0c;中山大学的李华山、王彪课题组&#xff0c;开发了一款名为 SEN 的机器学习模型&#xff…...

二百一十、Hive——Flume采集的JSON数据文件写入Hive的ODS层表后字段的数据残缺

一、目的 在用Flume把Kafka的数据采集写入Hive的ODS层表的HDFS文件路径后&#xff0c;发现HDFS文件中没问题&#xff0c;但是ODS层表中字段的数据却有问题&#xff0c;字段中的JSON数据不全 二、Hive处理JSON数据方式 &#xff08;一&#xff09;将Flume采集Kafka的JSON数据…...

【开放集检测OSR】开放集检测和闭集检测的区别和联系:从模型角度进行理解

定义一个分类器&#xff1a; D t r a i n { ( x i , y i ) } i 1 N ⊂ X C D_{train} \{(x_i, y_i)\}^N _{i1} ⊂ X C Dtrain​{(xi​,yi​)}i1N​⊂XC X&#xff1a;输入空间 ( x i , y i ) (x_i, y_i) (xi​,yi​): 输入的图像x以及其对象的类别标签yC &#xff1a;已知…...

【Flink】Flink核心概念简述

目录 一、Flink 简介二、Flink 组件栈1. API & Libraries 层2. runtime层3. 物理部署层 三、Flink 集群架构四、Flink基本编程模型五、Flink 的部署模式六、Flink 任务的执行模式五、Flink 的优点 一、Flink 简介 Apache Flink 的前身是柏林理工大学一个研究性项目&#x…...

linux-tar命令、解压、压缩

压缩 文件夹 命令&#xff1a;tar -zcvf ~/test/tar_t.tar.gz /target/ 将/target/文件夹及其子文件夹和文件压缩成tar_t.tar.gz文件&#xff0c;并放于~/test/路径下 文件 命令&#xff1a;tar -zcvf ~/test/tar_t.tar.gz /target/file 将/target/file文件压缩成tar_t.tar…...

Kafka Connect :构建强大分布式数据集成方案

Kafka Connect 是 Apache Kafka 生态系统中的关键组件&#xff0c;专为构建可靠、高效的分布式数据集成解决方案而设计。本文将深入探讨 Kafka Connect 的核心架构、使用方法以及如何通过丰富的示例代码解决实际的数据集成挑战。 Kafka Connect 的核心架构 Kafka Connect 的核…...

基于 Flink CDC 构建 MySQL 的 Streaming ETL to MySQL

简介 CDC 的全称是 Change Data Capture &#xff0c;在广义的概念上&#xff0c;只要是能捕获数据变更的技术&#xff0c;我们都可以称之为 CDC 。目前通常描述的 CDC 技术主要面向数据库的变更&#xff0c;是一种用于捕获数据库中数据变更的技术。CDC 技术的应用场景非常广泛…...

创建vue项目:node.js下载安装、配置环境变量,下载安装cnpm,配置npm的目录、镜像,安装vue、搭建vue项目开发环境(保姆级教程一)

今天讲解 Windows 如何创建 vue 项目&#xff0c;搭建 vue 开发环境&#xff0c;这是这个系列的第一章&#xff0c;有什么问题请留言&#xff0c;请点赞收藏&#xff01;&#xff01;&#xff01; 文章目录 一、Vue简单介绍二、开始搭建1、安装node.js环境2、配置npm下载时的默…...

大数据学习栈记——Neo4j的安装与使用

本文介绍图数据库Neofj的安装与使用&#xff0c;操作系统&#xff1a;Ubuntu24.04&#xff0c;Neofj版本&#xff1a;2025.04.0。 Apt安装 Neofj可以进行官网安装&#xff1a;Neo4j Deployment Center - Graph Database & Analytics 我这里安装是添加软件源的方法 最新版…...

Unity3D中Gfx.WaitForPresent优化方案

前言 在Unity中&#xff0c;Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染&#xff08;即CPU被阻塞&#xff09;&#xff0c;这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案&#xff1a; 对惹&#xff0c;这里有一个游戏开发交流小组&…...

【Java学习笔记】Arrays类

Arrays 类 1. 导入包&#xff1a;import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序&#xff08;自然排序和定制排序&#xff09;Arrays.binarySearch()通过二分搜索法进行查找&#xff08;前提&#xff1a;数组是…...

基于Flask实现的医疗保险欺诈识别监测模型

基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施&#xff0c;由雇主和个人按一定比例缴纳保险费&#xff0c;建立社会医疗保险基金&#xff0c;支付雇员医疗费用的一种医疗保险制度&#xff0c; 它是促进社会文明和进步的…...

HTML 列表、表格、表单

1 列表标签 作用&#xff1a;布局内容排列整齐的区域 列表分类&#xff1a;无序列表、有序列表、定义列表。 例如&#xff1a; 1.1 无序列表 标签&#xff1a;ul 嵌套 li&#xff0c;ul是无序列表&#xff0c;li是列表条目。 注意事项&#xff1a; ul 标签里面只能包裹 li…...

Python爬虫(二):爬虫完整流程

爬虫完整流程详解&#xff08;7大核心步骤实战技巧&#xff09; 一、爬虫完整工作流程 以下是爬虫开发的完整流程&#xff0c;我将结合具体技术点和实战经验展开说明&#xff1a; 1. 目标分析与前期准备 网站技术分析&#xff1a; 使用浏览器开发者工具&#xff08;F12&…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题&#xff1a;CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者&#xff1a;Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

Typeerror: cannot read properties of undefined (reading ‘XXX‘)

最近需要在离线机器上运行软件&#xff0c;所以得把软件用docker打包起来&#xff0c;大部分功能都没问题&#xff0c;出了一个奇怪的事情。同样的代码&#xff0c;在本机上用vscode可以运行起来&#xff0c;但是打包之后在docker里出现了问题。使用的是dialog组件&#xff0c;…...

Java数值运算常见陷阱与规避方法

整数除法中的舍入问题 问题现象 当开发者预期进行浮点除法却误用整数除法时,会出现小数部分被截断的情况。典型错误模式如下: void process(int value) {double half = value / 2; // 整数除法导致截断// 使用half变量 }此时...

【JVM面试篇】高频八股汇总——类加载和类加载器

目录 1. 讲一下类加载过程&#xff1f; 2. Java创建对象的过程&#xff1f; 3. 对象的生命周期&#xff1f; 4. 类加载器有哪些&#xff1f; 5. 双亲委派模型的作用&#xff08;好处&#xff09;&#xff1f; 6. 讲一下类的加载和双亲委派原则&#xff1f; 7. 双亲委派模…...