我想在 scala 中将字符串 arry/list 转换为 util.Collection[String] 对象。我尝试了多种方法,但没有成功。
import org.apache.kafka.clients.consumer.KafkaConsumer
object KafkaConsumerApp {
def main(args: Array[String]): Unit = {
val prop:Properties = new Properties()
prop.put("bootstrap.servers","192.168.1.100:9092,192.168.1.141:9092,192.168.1.113:9092,192.168.1.118:9092")
prop.put("key.deserializer","org.apache.kafka.common.serialization.StringDeserializer")
prop.put("value.deserializer","org.apache.kafka.common.serialization.StringDeserializer")
val consumer = new KafkaConsumer(prop)
val topics = List[String] ("my_topic_partition","my_topic_partition")
val a = Collections.singletonList(topics)
consumer.subscribe(a)
}
}
consumer.subscribe(a) 返回编译时错误
Error:(24, 14) overloaded method value subscribe with alternatives:
(x$1: java.util.regex.Pattern)Unit <and>
(x$1: java.util.Collection[String])Unit
cannot be applied to (java.util.List[List[String]])
consumer.subscribe(a)
您无需制作Singleton
List
. AList
已经是Collection
.
val: List[String] topics = List("my_topic_partition","my_topic_partition")
consumer.subscribe(topics)
如果你需要它是 Java 只是把它.asJava
像topics.asJava
并使用导入import collection.JavaConverters._
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句