我有这个代码将行拆分为获取键值对,如果缺少值则抛出exept。
为什么要给予执行?拆分此键值对线的正确方法是什么。
def lline="name="
def (key, value) = lline.split("=")
错误:
Caught: java.lang.ArrayIndexOutOfBoundsException: 1
java.lang.ArrayIndexOutOfBoundsException: 1
感谢
答案 0 :(得分:5)
这是因为lline.split("=")
会返回包含1个项目['name']
的数组,您可以尝试将第一个项目放入key
,将第二个项目放入value
如果您改为使用split
that takes a limit的版本:
def (key, value) = lline.split( "=", 2 )
它应该有用