java中String类中split()在探究。【Java】

本文通过实验探讨了Java中String类的split()方法在处理不同输入情况时的行为表现,包括字符串末尾是否含有分隔符及字符串本身不含指定分隔符的情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Java中“java.lang.String”包中提供了很多处理字符串的方法,其中包括字符串的分割处理,split()方法。

split()方法是根据某个字符,将某一特定的字符串分割成为一个String数组。便于使用,经常用于处理一组复选框的值。

但是,如果string字符串传过来的值为“1,2,3,4,5,”或者前台传过来的是"12345",如果直接用split(“,”)方法进行分割会不会报错?


所以做了一组实验。

package com.bonc.ioc.calm;

public class testStringMothed {
	
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		String aa = "1,2,3,4,5,";
		String bb = "12345";
		String cc = "1,2,3,4,5";
		String dd = ",1,2,3,4,5";
		
		String[] aa2 = aa.split(",");
		String[] bb2 = bb.split(",");
		String[] cc2 = cc.split(",");
		String[] dd2 = dd.split(",");
		
		for (int i = 0; i < aa2.length; i++) {
			System.out.println("aa2的第"+i+"个是:"+aa2[i]);
		}
		System.out.println();
		for (int j = 0; j < bb2.length; j++) {
			System.out.println("bb2的第"+j+"个是:"+bb2[j]);
		}
		System.out.println();
		for (int z = 0; z < cc2.length; z++) {
			System.out.println("cc2的第"+z+"个是:"+cc2[z]);
		}
		System.out.println();
		for (int x = 0; x < dd2.length; x++) {
			System.out.println("dd2的第"+x+"个是:"+dd2[x]);
		}
	}

}

运行结果为:



所以,使用String类的split()方法时,当字符串中不包含所使用的截取符时,也不会报错。同时尽量在末位加截取符,而不要再开头加,不然后有空值得出现。

唯一需要注意的是,相关特殊字符作为截取符的时候需要转意。在字符前加“\\”即可

split(".")-----------------split("\\.")

split("*")-----------------split("\\*")

split("@")-----------------split("\\@")

split("#")-----------------split("\\#")


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值