Tag: kotlin

Kotlin编辑列表

在Kotlin中编辑不可变List的最好方法是什么? 我明白, List实际上并不是不可变的,但是如果我将一个List传递给一个函数,并且我需要整个列表减去一个元素,那么是否有支持的方式来处理? 如果我想要一个额外的元素整个列表呢?

Kotlin默认的构造函数

这一切Kotlin片段是否相等? open class A // A() – explicit call of A default constructor class B : A() 使用super() : open class A class B : A { constructor() : super() } 使用super : open class A class B : A { constructor() : super } 没有指定: open class A class B : A { constructor() […]

了解Kotlin的特质

在Kotlin中,我们有可能创建一个“可能需要在呼叫方扩展类的特征”,比如 class Bar {} trait T1 : Bar {} class Foo : Bar, T1, T2, T3 {} class Wrong : T1, T2 //error: Wrong should extend Bar 我无法想象任何可以应用这种结构的流程。 谁能告诉我为什么我们需要它?

Kotlin RuntimeInvisibleParameterAnnotations属性:MyType(String)

我在Kotlin的参数枚举中遇到了一个问题,在与Dagger2集成之后,我在编译时得到了RuntimeInvisibleParameterAnnotaions属性:MyType(String)异常。 任何想法如何解决? 非参数枚举就像一个魅力 MyType的: enum class MyType constructor(val value: String) { ABC("123"), DEF("456"); } kotlin 1.0.2 with kapt generateStubs = true

如何检查kotlin中的“instanceof”类?

在kotlin类中,对于类类型T ,我有作为对象的方法参数(请参见kotlin doc)。 作为对象,我正在调用方法时传递不同的类。 在Java中,我们可以使用它的类的对象的instanceof来比较类。 所以我想在运行时检查和比较它是哪个类? 我如何检查kotlin中的instanceof类?

kotlin setter infinte递归

我正在测试Android上的kotlin,并遇到一个问题,两个变量的setter在一个infinte递归中被调用,因为它们在初始设置时试图互相改变。 这是一个示例代码 class Example { var a: Int = 0 set(value) { b = a+10 } var b:Int = 0 set(value) { a = b-10 } } 然后说我使用下面的代码: val example = Example() example.a = 10 它最终导致一个infinte递归,最终是一个计算器。 b的setter调用setter, a又调用setter为b 。 它永远持续下去。 我希望能够在每次设置b时更新b的值,而且每当b被设置时更新a的值。 那里的科特林专家有什么想法? 在这种情况下,我是否需要将Java设置为setter,以便在为a或b赋值时不会调用setter代码。 还是有一些漂亮的Kotlin善良,我可以使用?

吸毒者和安置者在Kotlin

例如,在Java中,我可以自己编写getter(由IDE生成),也可以在lombok中使用@Getter之类的Annotations – 这非常简单。 但是Kotlin 默认有getter和setter 。 但我不明白如何使用它们。 我想说的是,可以说 – 类似于Java: private val isEmpty: String get() = this.toString() //making this thing public rises an error: Getter visibility must be the same as property visibility. 那么吸气剂如何工作呢?

配置kotlin插件更新失败?

我试图通过这个窗口更新kotlin 插件 : 1-我检查更新。 2-新版本出现,我点击安装。 3-下载并安装后,我重新启动android studio。 我试了5次,每次kotlin插件都不更新。 为什么我不能更新它? 有点困惑的plugins我可以找到最终版本,但是当我打开配置kotlin插件更新它总是检查更新并安装它。

Kotlin工具栏菜单图标问题

我将以下Java代码转换为Kotlin代码。 Android Studio不显示任何错误消息。 但结果是不同的。 我添加了两个模拟器结果的图片。 正如你所看到的Java工作正常,并显示在工具栏中的3点菜单图标。 但是Kotlin代码不起作用。 是否有人知道错误是什么? 希望得到一些帮助。 谢谢。 Java的: @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_home, container, false); //… setHasOptionsMenu(true); return view; } @Override public void onCreateOptionsMenu(Menu menu, MenuInflater menuInflater) { menuInflater.inflate(R.menu.menu_main, menu); } @Override public void onPrepareOptionsMenu(Menu menu) { MenuItem settings = menu.findItem(R.id.settings); MenuItem singOut […]

将java转换为kotlin

我正在用orbit软件包开发一个Kotlin应用程序,但是我有一些问题来定义演员Unresolved reference: T class HelloActor():AbstractActor<T>,Hello 应该是什么T参数? 在docs中: * @param <T> a class that represents the state of this actor.