Java-字符串-split-踩坑记

1.1 split 的坑前几天在公司对通过 FTP 方式上传的数据文件按照事先规定的格式进行解析后入库,代码的大概实现思路是这样的:先使用流进行文件读取,对文件的每一行数据解析封装成一个个对象,然后进行入库操作。本以为很简单的一个操作,然后写完代码后自己测试发现对文件的每一行进行字符串分割的时候存在问题,在这里做个简单的记录总结。在 Java 中使用 split 方法对字符串进行分割是经常使用的方法,经常在一些文本处理、字符串分割的逻辑中,需要按照一定的分隔符进行分割拆解。这样的功能,大多数情况下我们都会使用 String 中的 split 方法。关于这个方法,稍不注意很容易踩坑。 (1)split 的参数是正则表达式首先一个常见的问题,就是忘记了 String 的 split 方法的参数不是普通的字符串,而是正则表达式,例如下面的这两种使用方式都达不到我们的预期: /** * @author mghio * @date: 2019-10-13 * @version: 1.0 * @description: Java 字符串 split 踩坑记 * @since JDK 1.8 */ public class JavaStringSplitTests { @Test public void testStringSplitRegexArg() { System.out.println(Arrays.toString("m.g.h.i.o".split("."))); System.out.println(Arrays.toString("m|g|h|i|o".split("|"))); } }<!-- more --> 以上代码的结果输出为: [][m, |, g, |, h, |, i, |, o]上面出错的原因是因为 . 和 | 都是正则表达式,应该用转义字符进行处理: ...

October 14, 2019 · 4 min · jiezi

Java基础差,需要怎么补

本文首发于本博客 猫叔的博客,转载请申明出处感谢粉丝的提问:Java基础差,需要怎么补?我整体的总结了一下,大致分为以下的几个点说一下:1、善于使用搜索引擎现在的网上资源基本是不缺的,缺的是你去搜索的积极性,你需要善于使用搜索引擎,去查找你想要的答案,类似百度、必应等大型搜索引擎,或者是去一些技术的问答平台提问。对于Java的一些基础知识,你可以轻而易举的找到对应相关的demo与实战,同时其针对性也强。2、整理学习目录如果你是一个自学Java的初学者,那么你其实更加需要一个细致的学习目录来帮你快速的整理入门流程,如下是我参考一些网络教程的自学目录。开发环境搭建(开发工具IDE)数据类型与运算符流程控制数组类和对象继承多态抽象类和接口异常如果你想要更高级一点的目录集合框架与泛型实用类lang、util输入、输出和反射注解和多线程网络编程技术XML技术你可能还需要一些扩展知识Spring框架MySql、OracleLinux、WindowHibernate、Struts2、SpringBoot等框架3、有规律的学习与笔记在你根据目录学习的过程中,我想你需要且一定要有一份在线或者线下的笔记,记录你的学习心得还有对技术的理解体会,甚至你可以借助一些你所理解的比喻来加深你对这一技术的学习等。比如我从在校带实验室的时候就一直保持笔记的习惯,我也一直保持到现在。4、反复与实战强化可能你在学习完一项技能后,或者一个基础知识后,开始上手,而且对应的demo也写得很顺利,但是一定要反复的练习,就像学习英语一样,你要不停的学习,最后在学习了几天后,可以自己和自己介绍这个技术并自己写一个实例来使用这个技术,那么你在未来都将记住这一技术的基本使用方式。浅显的说了一下,可能你对于基础是对于web应用,其实基本的思路也是差不多的,没有什么是捷径,唯一有的就是不停的学习与摸索。加油,各位!公众号:Java猫说现架构设计(码农)兼创业技术顾问,不羁平庸,热爱开源,杂谈程序人生与不定期干货。

January 4, 2019 · 1 min · jiezi