小编Nic*_*ick的帖子

scala函数参数的情况是否相关?

关于以下scala代码,函数m2a和m2b明显不同于参数的情况,即abc vs Abc.这似乎在结果上有所不同,如下面的例子所示.当使用最近的2.8编译器运行它时,会产生以下结果(我希望所有这些都是真的).任何见解将不胜感激.

m1=true
m2a=true
m2b=false
m3=true
Run Code Online (Sandbox Code Playgroud)

package sample

import scala.xml._

object ParamTest extends Application {

  def m1(n:Node, abc:String):Boolean = {
    n == <id>{Text(abc)}</id>
  }

  def m2a(n:Node, Abc:String):Boolean = n match {
    case <id>{Text(Abc)}</id> => true
    case _ => false;
  }

  // why does this one not work?
  def m2b(n:Node, abc:String):Boolean = n match {
    case <id>{Text(abc)}</id> => true
    case _ => false;
  }

  def m3(n:Node, abc:String):Boolean = n match {
    case Elem(_,"id",_,_, c @_ *) => {
      c …
Run Code Online (Sandbox Code Playgroud)

scala scala-2.8

4
推荐指数
2
解决办法
242
查看次数

标签 统计

scala ×1

scala-2.8 ×1