복붙노트

[SCALA] 어떻게 스칼라에서 I 설정 여러 유형의 경계는 무엇입니까?

SCALA

어떻게 스칼라에서 I 설정 여러 유형의 경계는 무엇입니까?

나는 이런 식으로 뭔가를 선언 할 수 있어야합니다 :

trait Narrowable[A] extends Iterable[A] {

    def narrow[B <: A & B <: AnyRef] : Iterable[B]

}

그것은 그건, 타입 B는 A와 AnyRef의 하위 유형을 모두해야한다. 이게 가능해?

해결법

  1. ==============================

    1.복합 유형을 사용합니다 :

    복합 유형을 사용합니다 :

    trait Narrowable[A] extends Iterable[A] {
      def narrow[B <: A with AnyRef] : Iterable[B]
    }
    
  2. from https://stackoverflow.com/questions/1491283/how-do-i-setup-multiple-type-bounds-in-scala by cc-by-sa and MIT license