У меня есть черта с generi c и два альтернативных метода проверки возраста и имени работника.
trait Conditions[T] {
def nameIs(color: String): T
def ageUpperThan(upper: Int): T
}
def nameIs[T](color: String)(implicit fi: Conditions[T]): T = fi.nameIs(color)
Я хочу переписать все эти Scala код в Java, что позволит мне сгенерировать конкретные условия, например, чтобы проверить, зовут ли Джона.
def isJohn[T: Conditions]: T = nameIs[T]("John")
Также код должен показать результат:
def show: Conditions[String] =
new Conditions[String] {
def nameIs(name: String): String = s"name is $name"
def ageUpperThan(age: Int): String = s"age upper $age"
}
println(isJohn[String](show))
Не могли бы вы помочь мне переписать методы nameIs и isJohn?
У меня проблема с implicit
и [T: Conditions]