2015-02-23 3 views
3

Как можно преобразовать в scala? Если я живу так, как есть, я получаю большое несоответствие типов ожидаетсяJava для «forEach» для Scala

.entrySet().forEach(entry -> {..}) 

Я попытался указать запись в java.util.Map.Entry, или изменения в Еогеасп лестницы, не работает.

Сообщите мне, если вам нужна дополнительная информация/код, и я создам некоторый фиктивный пример, так как мне не разрешено отправлять точный код.

+0

Я бы сказал, что вы хотите неявное преобразование. http://stackoverflow.com/questions/7481204/smooth-way-of-using-functiona-r-java-interface-from-scala –

+0

'for (entry <- entrySet) {...}' –

+0

Если это 'java.util.Map', то вы либо хотите неявное преобразование для функции, предложенное @MarkoTopolnik, либо преобразовать его в карту scala с помощью' .asScala' с 'import scala.util.JavaConverters._' наверху , Или вы можете явно создать экземпляр 'new Function() {}', как вы могли бы в Java. Если это 'scala.collection.Map', то подход' for (entry ← ...) '- это то, что вы хотите. – lmm

ответ

2

проверить это

Iterating over Java collections in Scala

для каждого в Скале

for(entry<-entrySet){ 
// 
} 

или

entrySet.foreach{entry=> 
// 
} 

или

.entrySet.map{entry => 
// 
} 
+0

Вы должны использовать 'foreach', а не' map'. 'map' может быть ленивым в зависимости от типа данных' entrySet'. – rightfold

+0

'for (entry <-entrySet)' более эквивалентно 'for (entry: entrySet())' в Java. – user11153

+0

Я получаю «не могу разрешить символ foreach» –

0

Просто

import scala.collection.JavaConversions._ 

неявного преобразования в коллекции SCALA.

+2

Пожалуйста, не предлагайте использовать неявные преобразования , [Декораторы] (http://www.scala-lang.org/api/current/index.html#scala.collection.convert.DecorateAsScala) - это путь: 'import scala.collection.convert.decorateAsScala._; javaCollection.asScala.foreach (x => doSomething (x)) '. –

+1

Хороший вопрос! Это объясняется в этом посте: http://stackoverflow.com/questions/8301947/what-is-the-difference-between-javaconverters-and-javaconversions-in-scala – gun

Смежные вопросы