【发布时间】:2016-03-28 21:28:15
【问题描述】:
你能推荐一个更好的方法吗?
val args = "The file on life was now won by the person who saw how to explore."
val argsSeq: Seq[String] = args.replaceAll("[^a-zA-Z0-9\\s]", "").toLowerCase.split(" ").sorted
for(i <- 0 until argsSeq.length){
for(j <- 0 until argsSeq.length){
if((argsSeq(i).toCharArray.sorted.deep == argsSeq(j).toCharArray.sorted.deep)) {
if((argsSeq(i).toCharArray.deep != argsSeq(j).toCharArray.deep))
{
println(argsSeq(i) + " " + argsSeq(j))
}
}
}
}
文件寿命
谁
生活档案
现在赢了
看到了
被看见
谁如何
现在赢了
首先,删除重复的字谜对。
二、替代for ... for ... if ... if结构?
谢谢。
【问题讨论】:
-
为什么要大写?还要解释你打算做什么,不要只扔代码,看看理解docs.scala-lang.org/tutorials/FAQ/yield.html 更多:为什么不将两个 if 子句加入一个 AND 子句?
-
谢谢,我用 && 替换了第二个 if ... if。仍然想知道他们是否是替代 for ... for 的更好模式?以及删除文件/生命和生命/文件等重复对的最佳方法。谢谢。
标签: scala if-statement for-loop