Java如何从单个字符串中读取多个值?
拆分冒号分隔的字符串获取人员信息
直接用字符串的split(':')方法就能搞定,这是处理分隔符字符串最常用的方式。给你个实际例子:
# 原始字符串 person_info = "George:45:185" # 按冒号拆分,得到包含三个元素的列表 split_result = person_info.split(':') # 直接解包到对应变量 name, age_str, height_str = split_result # 如果需要把年龄、身高转成整数(方便后续计算) age = int(age_str) height = int(height_str) # 验证结果 print(f"姓名:{name}") print(f"年龄:{age}") print(f"身高:{height}")
你之前尝试失败大概率是这几个原因:
- 拆分参数写错了:比如把
':'写成了';'或其他符号,必须和字符串里的分隔符完全一致 - 解包变量数量不对:拆分后会得到3个元素的列表,必须用3个变量去接,多了少了都会报错
- 没处理类型:拆分出来的所有元素都是字符串类型,如果直接把age当数字用会出错,需要转成int
想一步到位的话,也可以写成一行:
name, age, height = [int(x) if x.isdigit() else x for x in person_info.split(':')]
内容的提问来源于stack exchange,提问作者SERO9
相关产品推荐
相关产品推荐

