Я знаю, что это может показаться довольно простым вопросом, но я новичок в Scala и не смог найти решение в Интернете.
В основном я конвертирую программу на основе ИИ, и все мои данные находятся в формате JSON в Mongo. Последняя небольшая часть этого — функция, которая запускает симуляцию. Я столкнулся с проблемой сравнения [Ljava.lang.String с базовым массивом [String].
//temporary way to store variable
var g = row.as[MongoDBObject]("country").as[BasicDBList]("league").toArray(new Array[String](row.as[MongoDBObject]("country").as[BasicDBList]("league").length))
if (g.contains(Array("primera","division")))
//Do stuff
Это всегда возвращает false, даже если массив вернет true, если я это сделаю
if (g.contains("primera") && g.contains("division"))
Как я могу сравнить два из них, не написав отдельный метод для перебора и проверки (и ужасно неэффективный)
Мне нужно, чтобы массив был динамическим. «primera» и «division» — это просто заполнители для функции, которая проверяет строковый массив с именем «лига», который вводится.
// РЕДАКТИРОВАТЬ Я приблизился к Array[String]("primera","division").exists(g.contains)
, но это соответствует либо «primera», либо «division», а не обоим.
API: http://mongodb.github.io/casbah/api/#com.mongodb.casbah.package
Когда я вызываю g.getClass, он возвращает класс [Ljava.lang.String. Итак, я сравниваю это с массивом [String]