谁能告诉我如何重写这段代码以避免多余的部分?
val lineSplit = line.split(" ")
lineSplit match {
case Array(cls @ TaggedString(), prop @ TaggedString(), value @ Literal(), ".") => {processProperty(prop);processLiteral(value)}
case Array(cls @ TaggedString(), prop @ TaggedString(), value @ LiteralwithSchema(), ".") => {processProperty(prop);processExtendedLiteral(value)}
case Array(cls @ TaggedString(), prop @ TaggedString(), value @ TaggedString(), ".") => {processProperty(prop);processTag(value)}
case _ => throw new IllegalArgumentException("unable to identify line format")
}
正如您可能已经看到的那样,具有提取属性的部分总是相同的。你有什么想法如何充分考虑那部分吗?
谢谢你的输入,
斯特凡