草庐IT

kotlin.notimplementederror

全部标签

kotlin - 如果 kotlin 已经有 getter 和 setter,为什么在数据类中有 componentN 函数?

kotlin中有一个数据类,例如@EntitydataclassRecord(@Id@GeneratedValue(strategy=GenerationType.IDENTITY)valid:Long?=null,@Column(nullable=false,name="name")varname:String?=null)我可以调用component1和component2函数来访问属性。但是,当我声明属性var时,我有getter和setter,如果我声明属性val,我就有了getter。在这种情况下,componentN函数是否是多余的,为什么我们需要它们,因为getter似乎

kotlin - 伴随对象之外的访问方法 - Kotlin

我对kotlin还是很陌生,我想知道这是否可能,以及从伴随对象内部访问伴随对象外部的方法和变量是否违反最佳实践。例如classA{fundoStuff():Boolean=returntruecompanionobject{publicfunstuffDone():Boolean=returndoStuff()}}或者类似的东西谢谢 最佳答案 doStuff()是一个类的实例方法;调用它需要一个类实例。伴随对象的成员,就像Java中的静态方法一样,在范围内没有类实例。因此,要从伴随对象方法调用实例方法,您需要显式提供一个实例:cla

android - 检查EditText是否为空kotlin android

如何检查EditText是否为空?输入类型号packagecom.example.www.myapplicationimportandroid.support.v7.app.AppCompatActivityimportandroid.os.Bundleimportkotlinx.android.synthetic.main.activity_main.*importjava.util.*classMainActivity:AppCompatActivity(){overridefunonCreate(savedInstanceState:Bundle?){super.onCreate

kotlin - 使用 Kotlin 进行单元测试的 Dagger 2

在KotlinBlog有说明如何使Dagger2与Kotlin一起工作。一切都像魅力一样。到目前为止……我只是无法让它在测试中工作。DaggerTestSomeComponent不是从TestSomeComponent:SomeComponent生成的。我尝试了各种组合。包括在测试中创建全新的组件。还是什么都没有。有什么解决方法吗?或者我可以提供一些其他详细信息吗? 最佳答案 确保将kaptAndroidTest'com.google.dagger:dagger-compiler:2.0'添加到您的依赖项中。

android - Android 上的 Kotlin : map a cursor to a list

在Kotlin中,遍历AndroidCursor对象并将结果放入列表的最佳方法是什么?我的自动转换Java:vallist=ArrayList()while(c.moveToNext()){list.add(getStringFromCursor(c))}还有更惯用的方法吗?特别是,它可以在只读列表的单个分配中完成吗?比如……vallist=/*mystery*/.map(getStringFromCursor)...或其他一些排列,其中列表被分配完整的形式。 最佳答案 这就是我最后使用的方法,使用kotlin.sequences.

reflection - Kotlin,如何通过反射检索字段值

所以我在几个classes中有数百个字段我想在它们上编写一些方法,它们会自动println每个字段及其对应的值目前我有这个:innerclassVersion(valprofile:Profile){@JvmFieldvalMINOR_VERSION=glGetInteger(GL_MINOR_VERSION)funwrite(file:File?=null){//file.printWriter().use{out->out.pri}this::class.java.fields.forEach{println(it.isAccessible)println(it.getInt(it

operator-overloading - 在 Kotlin 中调用运算符和运算符重载

我了解了Invoke运算符,a()等价于a.invoke()关于Invoke运算符的内容是否比请解释的更多。此外,我没有得到任何Invoke运算符重载的示例。调用运算符重载可能吗?如果可能的话,任何人都可以用一个例子解释一下Invoke运算符重载吗?我对此一无所知。提前致谢。 最佳答案 是的,您可以重载invoke。这是一个例子:classGreeter(valgreeting:String){operatorfuninvoke(target:String)=println("$greeting$target!")}valhello

arrays - Kotlin 中的展平数组

我有一个二维节点数组,我想使用Kotlin数组的flatten函数将其展平为所有节点的单个数组。valnodes=kotlin.Array(width,{width->kotlin.Array(height,{height->Node(width,height)})})然后我尝试在二维数组上调用flatten函数nodes.flatten()但我收到一个错误:Typemismatch:inferredtypeisArray>butArray>wasexpected.我应该这样做吗? 最佳答案 使用更通用的flatMap:nodes.

另一个kt中的kotlin扩展方法访问

我正在考虑在一个文件中为String添加一个global扩展方法,无论我在哪里使用String,我都可以使用这个扩展。但我没能找到这样做的方法...我现在只是将扩展粘贴到各处。A.kt中的扩展:classA{......funString.add1():String{returnthis+"1"}......}并在B.kt中像这样访问:classB{funmain(){......vara=""a.add1()......}}我已经尝试了所有可以添加的方法,例如static和final,但没有任何效果。 最佳答案 确保您的扩展函数是

android - 当所选项目 View 为空时,Kotlin 在 Android 上崩溃

我收到一个错误,当我运行它时应用程序死掉了。这是错误:07-2221:02:19.7853136-3136/?E/dalvikvm:Couldnotfindclass'android.graphics.drawable.RippleDrawable',referencedfrommethodandroid.support.v7.widget.AppCompatImageHelper.hasOverlappingRendering07-2221:02:19.8253136-3136/?E/dalvikvm:Couldnotfindclass'android.widget.ThemedSp