广告
返回顶部
首页 > 资讯 > 后端开发 > JAVA >Java split方法详细讲解
  • 834
分享到

Java split方法详细讲解

java开发语言 2023-09-10 15:09:48 834人浏览 泡泡鱼
摘要

1. 问题描述 描述:在日常编写代码时,我们经常遇到需要将一串字符串中的数据进行分析摘取,从中获得分隔符外的数据,此时便不得不提split方法。 2. 方法介绍 分隔符可以是任意字符、符号、数字、字符串等。 2.1 split(String

1. 问题描述

描述:在日常编写代码时,我们经常遇到需要将一串字符串中的数据进行分析摘取,从中获得分隔符外的数据,此时便不得不提split方法。

2. 方法介绍

分隔符可以是任意字符、符号、数字、字符串等。

2.1 split(String regex)

2.1.1 单个分隔符

public class Test {    public static void main(String[] args) {        String str="2018,text,今天";        //单个分隔符用引号括起来即可        String[] data = str.split(",");        for(int i=0;i< data.length;i++){            System.out.println(data[i]);        }     }}

 上述代码输出结果

 如果分隔符本身就是"|",那么就需要使用转义字符"\"让其产生效果,否则结果相反。

public class Test {    public static void main(String[] args) {        String str="a|bc|8";        //java中\\表示一个普通\,\+特殊字符表示字符本身        String[] data = str.split("\\|");        for(int i=0;i< data.length;i++){            System.out.println(data[i]);        }    }}

 反之如果直接使用则会有相反效果, 输出字符串中的单个字符。如下所示:

public class Test {    public static void main(String[] args) {        String str="a|bc|8";        //java中\\表示一个普通\,\+特殊字符表示字符本身        String[] data = str.split("|");        for(int i=0;i< data.length;i++){            System.out.println(data[i]);        }    }}

2.1.2 多个分隔符

public class Test {    public static void main(String[] args) {        String str="2021年11月18日;英语,数学,语文;";        //多个分隔符用引号括起来,并且用“|”进行分割        String[] data = str.split(",|;");        for(int i=0;i< data.length;i++){            System.out.println(data[i]);        }     }}

 2.1.2 正则表达式表示分隔符

在正则表达式中"\d+"表示一个或多个数字,是用于从一堆数字字母以及其它字符组成的字符串中获取非数字字符或字符串。

public class Test {    public static void main(String[] args) {        String str="2018年11月18日abcd85gg688";        //正则表达式中\d+表示一个或多个数字,java中\\表示一个普通\        String[] data = str.split("\\d+");        for(int i=0;i< data.length;i++){            System.out.println(data[i]);        }     }}

 上述代码输出结果

 2.1.2 特殊情况

  1. 字符串开头有分隔符:开头产生一个空字符串,其余正常。
  2. 分隔符相互紧挨着:每两个分隔符产生一个空字符串,若有三个分隔符则会有2各空字符,以此类推。
  3. 字符串最尾部有分割符:末尾产生一个空字符串,其余正常。

2.2 split(String regex, int limit)

  1. 如果 limit > 0,(从左到右)最多分割 n - 1 次,数组的长度将不会大于 n,结尾的空字符串不会丢弃。
  2. 如果 limit < 0,匹配到多少次就分割多少次,而且数组可以是任何长度。结尾的空字符串不会丢弃。
  3. 如果 limit = 0,匹配到多少次就分割多少次,数组可以是任何长度,并且结尾空字符串将被丢弃。

也就是说,使用split方法时,如果只填一个正则表达式,结尾空字符串将被丢弃
 

来源地址:https://blog.csdn.net/qq_26893841/article/details/127919230

--结束END--

本文标题: Java split方法详细讲解

本文链接: https://www.lsjlt.com/news/402439.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Java split方法详细讲解
    1. 问题描述 描述:在日常编写代码时,我们经常遇到需要将一串字符串中的数据进行分析摘取,从中获得分隔符外的数据,此时便不得不提split方法。 2. 方法介绍 分隔符可以是任意字符、符号、数字、字符串等。 2.1 split(String...
    99+
    2023-09-10
    java 开发语言
  • Java String split()方法详细教程
    Java String split方法详细教程 1、内部实现2、语法3、参数4、返回值5、抛出异常6、Java String split()方法示例7、Java String split()方...
    99+
    2023-09-16
    java 开发语言
  • Java超详细讲解hashCode方法
    目录1、介绍一下hashCode方法2、为什么需要hashCode方法?3、hashCode(),equals()两种方法是什么关系?4、为什么重写 equals 方法必须重...
    99+
    2022-11-13
  • Java超详细讲解类变量和类方法
    目录1.static静态变量2.类变量(静态变量的访问)3.类方法1.static静态变量 1.静态变量被同一个类的所有对象共享 2.static类变量在类加载的时候就生成使用 st...
    99+
    2022-11-13
  • Java贪心算法超详细讲解
    目录什么是贪心算法通过场景理解算法问题分析总结什么是贪心算法 在分析和求解某个问题时,在每一步的计算选择上都是最优的或者最好的,通过这种方式期望最终的计算的结果也是最优的。也就是说,...
    99+
    2022-11-13
  • Java详细讲解文件的读写操作方法
    目录java的IO字节流InputStream的常用方法OutputStream的常用方法字节流读写文件如何将数据写入到文件中java的IO Java程序允许通过流的方式与输入输出设...
    99+
    2022-11-13
  • Java 枚举详细讲解
    目录 什么是枚举? 如何使用Java枚举? 如何使用Java枚举中的常量值? 如何在Java枚举中添加方法? 什么是枚举? 枚举是一种特殊的数据类型,用于定义具有固定个数的常量集。它可以帮助我们更好地管理常量,使代码更易于阅读和维护。 ...
    99+
    2023-09-01
    java 开发语言 javase 面向对象 枚举
  • ThreadPoolExecutor中的submit()方法详细讲解
    目录submmit()参数解析submit()的返回值FutureFutureTask的get()的实现submit()使用案例在使用线程池的时候,发现除了execute()方法可以...
    99+
    2022-11-13
  • C++BoostLockfree超详细讲解使用方法
    目录一、说明二、示例和代码Boost.Lockfree 一、说明 Boost.Lockfree 提供线程安全和无锁容器。可以从多个线程访问此库中的容器,而无需同步访问。 在 1.56...
    99+
    2022-11-21
    C++ Boost Lockfree C++ Lockfree方案
  • SpringBootcontroller参数校验方法详细讲解
    目录单参数校验实体类校验分组校验嵌套校验自定义注解参数校验主要使用两个标签@Validated和@Valid; @Valid是Hibernate的注解校验,@Validated是sp...
    99+
    2023-01-17
    SpringBoot controller参数校验 SpringBoot controller
  • Mybatis超详细讲解构建SQL方法
    目录1 SQL 构建对象介绍1.1.1 介绍1.1.2 实现准备2 查询功能的实现3 新增功能的实现4 修改功能的实现5 删除功能的实现1 SQL 构建对象介绍 1.1.1 介绍 我...
    99+
    2022-11-13
  • AndroidSurfaceView与TextureView使用方法详细讲解
    目录SurfaceSurfaceViewTextureViewSurfaceTextureSurfaceView和TextureView的区别Surface 官方对Surface的解...
    99+
    2022-11-13
    Android SurfaceView与TextureView Android TextureView Android SurfaceView
  • SpringBoot部署xxl-job方法详细讲解
    目录部署xxl-jobSpringBoot配置maven 配置application.yaml配置 XxlJobConfigXxlJobSpringExecutor新建执行任务配置x...
    99+
    2023-01-09
    SpringBoot部署xxl-job SpringBoot集成xxl-job
  • java反射超详细讲解
    目录Java反射超详解✌1.反射基础1.1Class类1.2类加载2.反射的使用2.1Class对象的获取2.2Constructor类及其用法2.4Method类及其用...
    99+
    2022-11-12
  • Java异常Exception详细讲解
    目录1、异常中最大的父类Throwable2、try-catch-finally三条语句注意的问题3、final-finally-finalize的各作用4、throws关键字5、t...
    99+
    2022-11-13
  • Java 抽象类详细讲解
    目录 Java抽象类概念 Java抽象类示例 继承Animal类的子类的示例 Java抽象类详细使用方法 1、定义抽象类 2、继承抽象类 3、实现抽象方法 4、完整示例代码 Java抽象类概念 Java中抽象类是指用abstract关键...
    99+
    2023-09-04
    java jvm 开发语言 javase 面向对象
  • 超详细讲解Java异常
    目录一、Java异常架构与异常关键字Java异常简介Java异常架构1、Throwable2、Error(错误)3、Exception(异常)4、受检异常与非受检异常Java异常关键...
    99+
    2022-11-12
  • Java的Spring AOP详细讲解
    目录什么是AOP&作用AOP的动态代理技术基于JDK的动态代理cglib动态代理AOP相关概念AOP开发明确事项需要编写的内容AOP技术实现的内容AOP 底层使用哪种代理方式...
    99+
    2022-11-13
  • Java详细分析讲解HashMap
    目录1.HashMap数据结构2.HashMap特点3.HashMap中put方法流程java集合容器类分为Collection和Map两大类,Collection类的子接口有Set...
    99+
    2022-11-13
  • Java的Stream流详细讲解
    一.Stream 是什么 Stream是Java 8新增的重要特性, 它提供函数式编程支持并允许以管道方式操作集合. 流操作会遍历数据源, 使用管道式操作处理数据后生成结果集合, 这个过程通常不会对数据源造成影响。 ​ 同时stream不是...
    99+
    2023-08-31
    java 开发语言
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作