将kotlin谓词转换为java

你如何将这个Kotlin谓词转换为java: List<SomeObjWithProp> lst = … Iterables.filter(lst) { obj -> obj?.property != null }

Kotlin通配符方法

我在使用retryWhen中的retryWhen函数时遇到了一些问题。 当我创建一个函数传递给retryWhen在一个Observable ,我不能调用zipWith函数。 看来Kotlin正在等待一些不能在这里施展的东西。 在这个例子中, it.zipWith不起作用(一些其他方法可用,但不是这个): val retryFunc = Func1<Observable<out Throwable>, Observable<Any>> { // zipWith is not possible to call it.zipWith<Int, Any>(Observable.range(1, 3), Func2<Throwable, Int, Any> { throwable, integer -> if (integer > 2) { return@Func2 Observable.error<Any>(Exception()) } Observable.timer(1, TimeUnit.SECONDS) }) } Observable.just("1", "2", "3").retryWhen(retryFunc) 如果我将传入的参数更改为Func1<Observable<in Throwable> … ,则in关键字可以使用zipWith函数。 但是,我改变后,调用retryWhen(retryFunc)显示一个错误: 类型不匹配:期望Throwable Throwable,在Throwable中找到 val retryFunc = […]

什么是Kotlin结构?

我正在看这个Kotlin对象声明: object A : B({ variableName1 = "text1" variableName2 = "text2" params { param("Foo", "Bar") } }) 而我无法弄清楚B类构造函数的参数是什么。 我在这个例子中有目的地提取了信息,但是B类实际上是 jetbrains.buildServer.configs.kotlin.v10.BuildType 而我无法找到该类型的文档。 我发现了一些接近的东西,但它是一个接口的定义,因此没有构造函数。 总而言之,Kotlin的这个构造是什么? { variableName1 = "text1" variableName2 = "text2" params { param("Foo", "Bar") } }

Kotlin类型推断失败

比方说,我们有一个这样的类的第三方Java库: //—————————————————————————————- package foo; public final class Functions { public interface VoidFunc0 { void call(); } public interface VoidFunc1<T> { void call(T t); } @SuppressWarnings("unchecked") public static <T> NoOpFunc<T> noOp() { return new NoOpFunc(); } /*public*/ static final class NoOpFunc<T> implements VoidFunc0, VoidFunc1<T> { @Override public void call() { /* deliberately no op */} @Override […]

Kotlin:内在范围 – 这

我只是使用Kotlins自动重构,它基本上离开了我: coverView.viewTreeObserver.addOnPreDrawListener { coverView.viewTreeObserver.removeOnPreDrawListener(this) true } 哪个不行 IntelliJ显示我this是指外部类而不是OnPreDrawListener。 这是为什么? kotlin文档说这总是指最内在的范围。

Kotlin android parcelable

我已经使用Android插件的android工作室的自动生成的功能,它生成了我下面的代码,但我不明白为什么需要为CREATOR字段的final val CREATOR ? 我在kotlin第一次看到final关键字。 data class Person( val name: String, val surname: String ) : Parcelable { constructor(source: Parcel): this(source.readString(), source.readString()) override fun describeContents(): Int { return 0 } override fun writeToParcel(dest: Parcel?, flags: Int) { dest?.writeString(name) dest?.writeString(surname) } companion object { @JvmField final val CREATOR: Parcelable.Creator<Person> = object : Parcelable.Creator<Person> { override fun […]

什么是Java的String 的Kotlin等价物?

我看到Kotlin具有ByteArray, ShortArray, IntArray, CharArray, DoubleArray, FloatArray ,相当于ByteArray, ShortArray, IntArray, CharArray, DoubleArray, FloatArray中的byte[], short[], int[],char[], double[], float[] 。 现在我想知道,是否有任何相当于Java的String[] StringArray ?

与JPA Kotlin:默认构造函数地狱

按照JPA的要求,@ @Entity类应该有一个默认的(非arg)构造函数来从数据库中检索对象时实例化对象。 在Kotlin中,属性在主构造函数中声明非常方便,如下例所示: class Person(val name: String, val age: Int) { /* … */ } 但是,当非参数构造函数被声明为次要构造函数时,它需要传递主构造函数的值,所以需要一些有效的值,如下所示: @Entity class Person(val name: String, val age: Int) { private constructor(): this("", 0) } 如果这些属性比String和Int有更复杂的类型,并且它们是不可空的,那么为它们提供值看起来完全不好,尤其是当主构造函数和init块中有很多代码,并且参数是积极使用 – 当它们被重新分配时,大部分代码将被重新执行。 而且, val -properties不能在构造函数执行后重新分配,所以不可变性也会丢失。 所以问题是:Kotlin代码如何适应与JPA无代码重复,选择“魔术”的初始值和不可变性的损失? PS除了JPA,Hibernate是否可以构造没有默认构造函数的对象呢?

Kotlin Json解析器

我在Kotlin有这个JSON,我不能获取和解析。 任何快速的帮助。 请。 [{platform: {name: "mena-web",publishingRegion: "mena",platformGroup:"web",id: 2,countryCode: "AE",locales: {locale:["en_US","ar_AE"]}}}] 这里是我的数据类: data class Locales(var locale: ArrayList<String>) {} data class Platform(var name: String, var publishingRegion: String, var platformGroup: String, var id: Int, var countryCode: String, var locales: Locales) {} data class Json(var platform: Platform) {} 这是我的JSON API接口: interface Api { @GET("/me.json2") fun getGeo(callback: Callback<List<Json>>): Call<List<Json>> } […]

解析xml kotlin android

我有这样的XML: <horo> <aries> <today> Сегодня вас могут здорово огорчить. Если от расстройства все начнет валится из рук, просто спокойно сядьте и тихонько подождите хорошей новости. </today> </aries> <taurus> <today> Сегодня у вас могут возникнуть проблемы на личном фронте. Спасти вас от перспективы оказаться не у дел может сухой, рациональный и в высшей степени объективный подход […]