Java中字符串分割使用split(),按照.切分出错的解决办法

魔兽世界怀旧服宏命令全解析:从自动换装到智能判定,老玩家才知道的黑科技 本文全面解析魔兽世界怀旧服宏命令的高级应用,从自动换装到智能判定,揭秘老玩家专属的黑科技技巧。深入探讨怀旧服特有的宏命令机制,包括施法队列、装备切换系统和职业专属技巧,帮助玩家在经典旧世版本中提升战斗效率。 阅读详情

问题产生:

今天日常做PAT的时候,有一个输入一串数据,给出的输入是按照点分割的,所以第一时间就想到了用nextLine()读取一行字符串,trim去括号后用split来分割成String字符串数组,最后在挨个转成int来存储,于是,就有了如下代码:

public class _1037_HogwartsCoin {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		String[] money = sc.nextLine().trim().replace(" ", ".").split(".");
		
		for(int i=0;i<money.length;i++) {
			System.out.println(money[i]);
		}

		int knutP = Integer.parseInt(money[2]); //一块
		int sikleP= Integer.parseInt(money[1]);//29块
		int GalleonP= Integer.parseInt(money[0]);//17*29块 493
		Coin P = new Coin(knutP,sikleP,GalleonP);
		int knutA = Integer.parseInt(money[5]); //一块
		int sikleA= Integer.parseInt(money[4]);//29块
		int GalleonA= Integer.parseInt(money[3]);//17*29块 493
		Coin A = new Coin(knutA,sikleA,GalleonA);


		

	}

然后尝试输入后报错

数组越界。。。蒙了啊

解决办法:

通过万能的网络,得到一个结论:split()方法接受的是正则表达式,所以传入的”.”就变成了正则表达式的关键字,表示除换行符之外的任意字符。所以,这里需要转义”\\.”或”[.]”。

问题解决!

部署资源管理系统chemx 资源管理系统的部署教程 阅读详情

相关推荐

Syzkaller实战教程2:运行环境配置+实例运行

本文详细介绍了在linux系统上搭建Syzkaller内核模糊测试环境的完整流程。 1.环境配置:通过VMware创建Ubuntu20.04虚拟机A,配置QEMU/KVM虚拟化环境,安装Go语言工具链和Syzkaller; 2.内核编译:下载Linux内核源码并配置KCOV等调试选项,编译生成带覆盖率支持的bzImage内核镜像; 3.测试环境构建:使用debootstrap创建Debian虚拟机镜像,通过QEMU启动嵌套虚拟机B; 实例测试: 4.演示两种测试场景 - 提供完整上手教程

cuguanren的博客 1376

python字符串split的一个小坑

首选来看一个字符串:s = 'ae' 大家猜一下如果调用python的spli(‘e’)函数,分割的结果是怎么样的?我猜是 [‘a’]。 但是我们来看一下代码跑出来的结果: 可以看到,并不是像我猜测的那样,实际上python分割出了两个元素,其中一个是空字符串’’。所以切分得到的列表不是只有一个元素,而是有两个元素。这点需要注意。 下面我们再来看一下s='aee',这次我猜测是[‘a’,’’,’...

Lavi的专栏 1033

别让PEX和后仿真拖后腿:Calibre与Virtuoso ADE联调的那些‘坑’与最佳实践

本文深入探讨了Calibre与Virtuoso ADE在PEX寄生参数提取和后仿真联调中的常见问题与解决方案。针对DRC/LVS验证通过后出现的网表导入错误和仿真波形异常,提供了七大典型场景的实战经验,包括PEX提取模式选择、CalibreView生成细节、环境变量配置等关键环节的最佳实践,助力工程师高效完成芯片设计验证。

weixin_33695450的博客 393

java中字符串分割时(split)如果包含特殊字符‘{‘、‘|‘、‘}报错解决。

报错的原因是Split方法底层是正则表达,对特殊字符需要转义处理才可以。以下是split()的源码 public String[] split(String regex) { return split(regex, 0); } public String[] split(String regex, int limit) { /* fastpath if the regex is a (1)one-char String and this ch.

qq_36684348的博客 3833

车企常用架构、通信设计、需求管理工具全汇总

车辆技术是个系统工程,比较大,需要多人协作。“协作”往往需要工具参与,才能保证协作过程的高效、有条不紊。 【文章系转载,出处见图片水印】 今天我们就来捋一捋汽车行业常用的架构、网络开发工具~ Preevision 大名鼎鼎的Preevision,来自大名鼎鼎的Vector。 个人觉得,它是Vector公司最牛逼、最神秘、最高高在上的产品,犹如空谷回响、千里传音,但是很少看到它真正落地。 它最引以为傲的,或许是在给客户做介绍的时候,说“我们甚至能够精确到每一根线束的长度”,但是反观.

MaveDiao的博客 3485

为什么你的ESXI无法识别移动硬盘?一步步教你解决USB存储挂载问题

本文深入解析了ESXi无法识别移动硬盘的根本原因,并提供了从诊断到解决的完整方案。核心在于理解ESXi的USB Arbitrator服务机制,通过检查服务状态、内核设备识别及分区表,逐步定位问题。文章详细指导了如何禁用USB仲裁服务以在主机挂载USB存储,或将其直通给虚拟机,并针对大容量硬盘、USB 3.0兼容性等进阶问题给出了实用建议。

qq_27496129的博客 332

java string split 引号_Java:分割逗号分隔的字符串,但忽略引号中的逗号

小编典典尝试:public class Main {public static void main(String[] args) {String line = "foo,bar,c;qual=\"baz,blurb\",d;junk=\"quux,syzygy\"";String[] tokens = line.split(",(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)", ...

weixin_42515295的博客 1423

Deepface实战避坑:人脸识别模型VGG-Face、Facenet、ArcFace怎么选?附各模型性能与速度实测对比

本文深入对比了DeepFace框架中VGG-Face、Facenet和ArcFace三种主流人脸识别模型的性能与适用场景,提供了详细的实测数据和选型建议。通过分析各模型在CPU/GPU环境下的推理速度、内存占用和准确率表现,帮助开发者根据实际需求(如门禁系统、相册分类或视频流分析)选择最优模型,并给出工程化部署的避坑指南和优化技巧。

weixin_42625070的博客 305

Java(四)常用类:String.split("*")出错,与正则表达式符号冲突

文章目录一、*号的异常二、正则表达式符号冲突扩展 一、*号的异常 现象: 在使用字符串分离时,直接使用"*"号,导致抛出异常,名为“Dangling meta character '*' near index 0” 原因: 因为+、*、|、\等符号在正则表达示中有相应的不同意义,所以在使用时要进行转义处理 解决方法: split("\\*")或者split("[*]") PS:一个\表示不行(...

sandalphon4869的博客 1654

AI系统架构原理与代码实战案例讲解

人工智能的概念可以追溯到上世纪50年代,图灵测试的提出标志着人工智能作为一门学科的诞生。早期的研究主要集中在符号推理、专家系统等领域,取得了一些突破,例如机器定理证明、西洋跳棋程序等。上世纪80年代,随着专家系统的兴起,人工智能进入了一个黄金时期。专家系统通过模拟人类专家的知识和经验进行推理和决策,在医疗诊断、故障诊断等领域取得了成功应用。进入90年代,由于计算能力的限制和数据量的不足,人工智能的发展陷入低谷。近年来,随着深度学习技术的突破、大数据的兴起以及计算能力的提升,人工智能迎来了第三次发展浪潮,在图

AI天才研究院 1794

微信小程序 - {“errMsg”:”requestPayment:fail banned”} 微信小程序调用wx.requestPayment支付失败返回错误(uniapp微信小程序微信支付报错)

{“errMsg”:”requestPayment:fail banned”},微信小程序调用wx.requestPayment报错requestPayment:fail banned,uni-app微信小程序wx.requestPayment支付报错requestPayment:fail banned,拉起小程序支付报错,iPhone苹果ios真机微信支付报错,Android安卓手机微信支付报错,支付报错,商户配置,签名验证,uniapp 小程序支付微信支付一场,设置过b2b类目,确认了商户号相关功能正常

🏆 前端领域优质创作者 3344

Java中Split的坑

遇到问题:字符串spilt之后赋值给数组,继续给数组赋值之后发现ArrayIndexOutOfBoundsException 原因:split切分之后会重新定义数组的长度。 String te[] = new String[9]; te[3] = "11"; String v = "1,2,3"; te = v.split(",...

Carry_Jey 1108

hwasan / asan详细分析踩内存之一:Use after free

UAF漏洞全称为use after free ,即利用已经被free掉的堆块被再次利用,该漏洞的存在是因为程序编写者在free堆块部分没有将该堆块的fd指针改为0,进而导致该堆块可以被申请回来,3.内存块被free后,其对应的指针没有被设置为 NULL,但是在它下一次使用之前,有代码对这块内存进行了修改,那么当程序再次使用这块内存时,就很有可能会出现奇怪的问题。2.堆块free后,对应指针没有被设置为NULL,即还可以调用会该堆块,当我们申请一个比该堆块小于等于的size时。

1397

java split分割字符串注意事项

Java中的我们可以利用split把字符串按照指定的分割符进行分割,然后返回字符串数组,下面是string.split的用法实例及注意事项:java.lang.string.splitsplit 方法将一个字符串分割为子字符串,然后将结果作为字符串数组返回。stringObj.split([separator,[limit]]) 免费资源收集网(http://www.freezq.cn)strin

faleshi的专栏 2491

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

JAVA - split: 将字符串分割成数组

利用split把字符串按照指定的分割符进行分割,然后返回字符串数组,下面是string.split的用法实例及注意事项: java.lang.string.split split 方法 将一个字符串分割为子字符串,然后将结果作为字符串数组返回。 stringObj.split([separator,[limit]])  stringObj 必选项。要被分解的 String 对象或文字,

2万+

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Java分割字符串

java中按某个标识符分割字符串的方法如下: Scanner scanner = new Scanner(System.in); String source = scanner.next(); String[] sourceArray = source.split("/"); for (int i = 0; i < sour...

Zhujiang 3万+

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

String.split()分割字符串,转义字符

1、String.split()String有个方法是分割字符串  .split()。但是有写字符串是需要转义才能分割,不然就会出错。需要转义的字符串:.  $  |   (   )  [   {   ^  ?  *  +  \\      共12个特殊字符,遇到以这些字符进行分割字符串的时候,需要在这些特殊字符前加双反斜杠 \\例如:str.split("\\.") str.split("\\$...

yanweihpu的博客 3万+

java 字符分割函数_Java用split函数进行分割字符串

在java中,经常会对字符串进行分割,使用split方法把字符串按照指定的分割符进行分割,然后返回字符串数组,下面是string.split的用法实例及注意事项:public class StringSplit {public static void main(String[] args) {String sourceStr = "1,2,3,4,5";String[] sourceStrArra...

weixin_29783347的博客 1039

java split with_Java字符串分割函数split

Java中的我们可以利用split把字符串按照指定的分割符进行分割,然后返回字符串数组,下面是string.split的用法实例及注意事项:1.split 方法 将一个字符串分割为子字符串,然后将结果作为字符串数组返回。 基本格式 :stringObj.split([separator,[limit]]) (1)stringObj 必选项。要被分解的对象即你想要进行操作的字符串,该对象不会被...

weixin_33435783的博客 545

java split 字符串作为分隔符_Java 字符串分隔 split

Java中的我们可以利用 split 方法(Java.lang.string.split)把字符串按照指定的分割符进行分割,然后返回字符串数组,下面是string.split的用法实例及注意事项。split 方法将一个字符串分割为子字符串,然后将结果作为字符串数组返回。stringObj.split([separator,[limit]])stringObj:必选项。要被分解的 String 对象...

weixin_36201981的博客 2497

java字符串的拆分_Java中的字符串分割 .

java中的split函数和js中的split函数不一样。Java中的我们可以利用split把字符串按照指定的分割符进行分割,然后返回字符串数组,下面是string.split的用法实例及注意事项:java.lang.string.splitsplit 方法将一个字符串分割为子字符串,然后将结果作为字符串数组返回。stringObj.split([separator,[limit]]) 免费资源收...

weixin_34246971的博客 1万+

java中split用法

用法 Java中split的用法 Java中的我们可以利用split把字符串按照指定的分割符进行分割,然后返回字符串数组,下面是string.split的用法实例及注意事项: java.lang.string.split split 方法 将一个字符串分割为子字符串,然后将结果作为字符串数组返回。 stringObj.split([separator,[limit]]) stringObj 必选项。要被分解的 String 对象或文字,该对象不会被split方法修改。 separator 可选项。字符串或正

zmhappy的博客 7138

Java字符串分割函数split

Java中的我们可以利用split把字符串按照指定的分割符进行分割,然后返回字符串数组,下面是string.split的用法实例及注意事项:  1.split 方法  将一个字符串分割为子字符串,然后将结果作为字符串数组返回。 基本格式 :stringObj.split([separator,[limit]])  (1)stringObj  必选项。要被分解的对象即你想要进行操作的字符串,该对象...

z_xindong的博客 1万+

字符串分割注意事项 String split

字符串分割注意事项 在Java程序中,由于系统类库的支持,分割字符串变得很容易,但是,在使用spilt方法时,有些细节不容忽视。当使用"|"、"+"、"?"、"\"、"*"、"^"、"."等特殊字符分割字符串时,若不进行特殊字符的转义,将得不到正确的结果,有些还会报错。仔细研究API中spilt方法的介绍,才知晓其中原委。API中的描述,public String[] spilt(Str...

f45056231p的博客 422

java中的字符串分割函数 split

Java中的我们可以利用split把字符串按照指定的分割符进行分割,然后返回字符串数组,下面是string.split的用法实例及注意事项:  java.lang.string.split  split 方法  将一个字符串分割为子字符串,然后将结果作为字符串数组返回。  stringObj.split([separator,[limit]])  stringObj  必选项。

huangxy10的专栏 1万+

Java使用split()按.切分出错解决方法

Java使用split(“.”)出错抛出ArrayIndexOutOfBoundsException使用情景:今天在项目中使用split截取图片时抛出了一个截取代码后如下:@Test public void testSpit() { String s[] = "boy.jpg".split("."); for (int i = 0; i <= s.length; i++) {

Tiakon的博客 8168
上一篇: js在前端页面的位置引发的小问题,到底是放head里还是body里呢
下一篇: Java 普通方法中形参列表中以接口作为数据类型实现继承和多态
TimothyHTY
博客等级 码龄9年 16粉丝 44原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值