Java中使用split()方法解析冒号分隔的字符串
本文介绍如何在Java中将形如"George:45:185"的冒号分隔字符串拆分为姓名、年龄、身高三个独立字段,并安全转换为对应数据类型。

本文介绍如何在Java中将形如"George:45:185"的冒号分隔字符串拆分为姓名、年龄、身高三个独立字段,并安全转换为对应数据类型。
本文介绍如何在Java中将形如"George:45:185"的冒号分隔字符串拆分为姓名、年龄、身高三个独立字段,并安全转换为对应数据类型。
在Java开发中,解析结构化字符串(如CSV风格的简单记录)是常见需求。当数据以固定分隔符(如冒号 :)连接时,String.split() 是最直接、高效的解决方案。
以下是最基础的实现方式:
String str = "George:45:185";
String[] parts = str.split(":");
String name = parts[0];
int age = Integer.parseInt(parts[1]);
int height = Integer.parseInt(parts[2]);
System.out.println("Name: " + name + ", Age: " + age + ", Height: " + height);
// 输出:Name: George, Age: 45, Height: 185⚠️ 注意事项与最佳实践:
split() 返回 String[],务必校验数组长度,避免 ArrayIndexOutOfBoundsException:
if (parts.length < 3) { throw new IllegalArgumentException("Invalid format: expected 'name:age:height'"); }Integer.parseInt() 可能抛出 NumberFormatException,建议用 try-catch 包裹或使用 Integer.valueOf() 配合异常处理逻辑;
若字符串中可能含转义冒号或空格(如 "John Doe: 32 : 178"),可先 trim() 再解析:
String name = parts[0].trim(); int age = Integer.parseInt(parts[1].trim());
Java 14+ 可结合 records 封装结构(增强可读性与类型安全):
record Person(String name, int age, int height) {} // 解析后:Person p = new Person(name, age, height);
综上,split(":") 是解析此类字符串的标准起点,配合输入校验与异常处理,即可构建健壮、可维护的数据提取逻辑。
Photoshop 2026 是 Adobe 推出的专业图像处理与视觉设计软件,支持 Windows、macOS 和 iPad 等平台,广泛应用于摄影修图、电商设计、平面海报、数字绘画及视觉合成等创作场景。
Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。
Photoshop 2026 是 Adobe 推出的专业图像处理与视觉设计软件,支持 Windows、macOS 和 iPad 等平台,广泛应用于摄影修图、电商设计、平面海报、数字绘画及视觉合成等创作场景。
Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。















