今天,我正在处理一个项目,并且有一个关于split()的代码
val ageData = dataFile.map(line => line.split("s",1)(1))//ageDate:RDD[String]
我知道什么是分裂(" s",1)。我的问题是"(1)"意思?
答案 0 :(得分:4)
line.split("s",1)(1)
(1)
是Array
的索引,例如:
"abab".split("b", 2)
数组(a,ab)
所以"abab".split("b", 2)(1)
将为ab
需要调出的另一件事是line.split("s",1)(1)
这将抛出ArrayIndexOutOfBoundsException: 1
这导致您设置拆分限制(line.split("s",1)
)为1
,这意味着数组的大小为1
。所以当你使用数组索引1
时,这会抛出异常。它应该是line.split("s",1)(0)
或line.split("s",2)(1)