Why scala's pattern maching does not work in for loops for type matching?

后端 未结 3 810
盖世英雄少女心
盖世英雄少女心 2020-12-10 15:25

I\'m coding against an API that gives me access to remote file system. The API returns a list of files and directories as list of node objects (parent to file and directory)

3条回答
  •  猫巷女王i
    2020-12-10 16:14

    This is the long-standing issue 900 and has been discussed many times before. The common workaround is to use something like:

    for (y@(_y:String) <- listOfBaseObjects) {
        println(y)
    }
    

    A nicer version is provided by Jason Zaugg in the comments to the above-mentioned ticket:

    object Typed { def unapply[A](a: A) = Some(a) }
    
    for (Typed(y : String) <- listOfBaseObjects) {
        println(y)
    }
    

提交回复
热议问题