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是一种用于检测内存错误的工具…...
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的第四天
作业 : 使用两个子进程完成两个文件的拷贝,子进程1拷贝前一半内容,子进程2拷贝后一般内容,父进程用于回收两个子进程的资源 #include <head.h>int main(int argc, const char *argv[]) {int rd -1;if((rdopen("./01_test.c&quo…...
Linux:缓冲区的概念理解
文章目录 缓冲区什么是缓冲区?缓冲区的意义是什么?缓冲区的刷新方式 理解缓冲区用户缓冲区和内核缓冲区缓冲区在哪里? 本篇主要总结的是关于缓冲区的概念理解,以及再次基础上对文件的常用接口进行一定程度的封装 缓冲区 什么是缓…...
中山大学李华山、王彪课题组开发 SEN 机器学习模型,高精度预测材料性能
内容一览:了解全局晶体对称性并分析等变信息,对于预测材料性能至关重要,但现有的、基于卷积网络的算法尚且无法完全实现这些需求。针对于此,中山大学的李华山、王彪课题组,开发了一款名为 SEN 的机器学习模型ÿ…...
二百一十、Hive——Flume采集的JSON数据文件写入Hive的ODS层表后字段的数据残缺
一、目的 在用Flume把Kafka的数据采集写入Hive的ODS层表的HDFS文件路径后,发现HDFS文件中没问题,但是ODS层表中字段的数据却有问题,字段中的JSON数据不全 二、Hive处理JSON数据方式 (一)将Flume采集Kafka的JSON数据…...
【开放集检测OSR】开放集检测和闭集检测的区别和联系:从模型角度进行理解
定义一个分类器: 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:输入空间 ( x i , y i ) (x_i, y_i) (xi,yi): 输入的图像x以及其对象的类别标签yC :已知…...
【Flink】Flink核心概念简述
目录 一、Flink 简介二、Flink 组件栈1. API & Libraries 层2. runtime层3. 物理部署层 三、Flink 集群架构四、Flink基本编程模型五、Flink 的部署模式六、Flink 任务的执行模式五、Flink 的优点 一、Flink 简介 Apache Flink 的前身是柏林理工大学一个研究性项目&#x…...
linux-tar命令、解压、压缩
压缩 文件夹 命令:tar -zcvf ~/test/tar_t.tar.gz /target/ 将/target/文件夹及其子文件夹和文件压缩成tar_t.tar.gz文件,并放于~/test/路径下 文件 命令:tar -zcvf ~/test/tar_t.tar.gz /target/file 将/target/file文件压缩成tar_t.tar…...
Kafka Connect :构建强大分布式数据集成方案
Kafka Connect 是 Apache Kafka 生态系统中的关键组件,专为构建可靠、高效的分布式数据集成解决方案而设计。本文将深入探讨 Kafka Connect 的核心架构、使用方法以及如何通过丰富的示例代码解决实际的数据集成挑战。 Kafka Connect 的核心架构 Kafka Connect 的核…...
基于 Flink CDC 构建 MySQL 的 Streaming ETL to MySQL
简介 CDC 的全称是 Change Data Capture ,在广义的概念上,只要是能捕获数据变更的技术,我们都可以称之为 CDC 。目前通常描述的 CDC 技术主要面向数据库的变更,是一种用于捕获数据库中数据变更的技术。CDC 技术的应用场景非常广泛…...
创建vue项目:node.js下载安装、配置环境变量,下载安装cnpm,配置npm的目录、镜像,安装vue、搭建vue项目开发环境(保姆级教程一)
今天讲解 Windows 如何创建 vue 项目,搭建 vue 开发环境,这是这个系列的第一章,有什么问题请留言,请点赞收藏!!! 文章目录 一、Vue简单介绍二、开始搭建1、安装node.js环境2、配置npm下载时的默…...
AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
java_网络服务相关_gateway_nacos_feign区别联系
1. spring-cloud-starter-gateway 作用:作为微服务架构的网关,统一入口,处理所有外部请求。 核心能力: 路由转发(基于路径、服务名等)过滤器(鉴权、限流、日志、Header 处理)支持负…...
Nuxt.js 中的路由配置详解
Nuxt.js 通过其内置的路由系统简化了应用的路由配置,使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...
Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!
一、引言 在数据驱动的背景下,知识图谱凭借其高效的信息组织能力,正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合,探讨知识图谱开发的实现细节,帮助读者掌握该技术栈在实际项目中的落地方法。 …...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...
均衡后的SNRSINR
本文主要摘自参考文献中的前两篇,相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程,其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt 根发送天线, n r n_r nr 根接收天线的 MIMO 系…...
iview框架主题色的应用
1.下载 less要使用3.0.0以下的版本 npm install less2.7.3 npm install less-loader4.0.52./src/config/theme.js文件 module.exports {yellow: {theme-color: #FDCE04},blue: {theme-color: #547CE7} }在sass中使用theme配置的颜色主题,无需引入,直接可…...
Caliper 负载(Workload)详细解析
Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...
在 Spring Boot 项目里,MYSQL中json类型字段使用
前言: 因为程序特殊需求导致,需要mysql数据库存储json类型数据,因此记录一下使用流程 1.java实体中新增字段 private List<User> users 2.增加mybatis-plus注解 TableField(typeHandler FastjsonTypeHandler.class) private Lis…...
前端中slice和splic的区别
1. slice slice 用于从数组中提取一部分元素,返回一个新的数组。 特点: 不修改原数组:slice 不会改变原数组,而是返回一个新的数组。提取数组的部分:slice 会根据指定的开始索引和结束索引提取数组的一部分。不包含…...
