问题标签 [extension-function]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
operator-overloading - 为“数字类”重载 + 和 += 运算符
我想为封装 simple 的类创建扩展函数Number
。例如DoubleProperty
. 我遇到了一个问题,我不能同时重载+
和+=
运算符。
我不想创建通过以下测试的行为:
它可以使用这些扩展函数来实现:
问题是,如果过载+
,+=
也不能过载:
如果我只重载+
运算符,则操作会返回一个新DoubleProperty
对象+=
而不是初始对象。
有没有办法解决这个限制?
android - kotlin 之间的区别还有,apply,let,use,takeIf 和 takeUnless 在 Kotlin
我阅读了许多关于这些项目的 Kotlin 文档。但我不能理解得这么清楚。
Kotlin let , also , takeIf和takeUnless的详细用途是什么?
我需要每个项目的示例。请不要发布 Kotlin 文档。我需要这些项目的实时示例和用例。
kotlin - 调用 kotlin 扩展函数时出现 NoClassDefFoundError
我正在使用 Android Studio 3.0 Beta 2 Canary Preview,并从 Java 调用 Kotlin 扩展函数:
科特林代码:
的Java代码:
代码编译得很好,但在运行时调用它给了我一个 - java.lang.NoClassDefFoundError
难道我做错了什么?Intellij那边有错误吗?如果需要更多信息,请说出来。
android - 如何在Kotlin android的扩展函数中访问同名的类成员
我是 kotlin for android 的新手。我想访问在扩展函数中具有相同名称的类成员。例如:
我如何访问方法visibility
。changeVisibleState
intellij-idea - 有没有办法在 Intellij IDE 中显示给定 Kotlin 类的所有扩展功能?
到目前为止,我发现的唯一方法是创建给定类的实例,然后使用自动完成功能查看所有可能的功能。显然,这种方式很繁琐,也很耗时。有没有更简洁的方法来查看所有可能的功能?
kotlin - Kotlin - How i can access my new class extension function from another file
I am very new to Kotlin.
I want to be able to add a function to my abstract class, so when I define that function I will be able to invoke that on every child from that class(they inherit the abstract class)
However,I want to define those extension functions in other file. I can't access those functions when i try to invoke them on a particular child implementation of the abstract class.
What are the rules, that I need to made to resolve my problem?
I want to by able achieve something like this:
The extension method for parent and all childs:
And I want to be able to invoke this:
I defined all classes in separate file and also the extension function in other file.
I cannot access the function like this - is not visible.
xpath - Xpath 中的 OGC 过滤器规范
我有一些符合已知模式的 XML 文档,其中包括 GML 格式的几何图形。
我希望使用 XSD 和 Schematron 验证对 XML 执行验证,但我需要一些在 Xpath 语言中执行空间查询的方法(我假设通过扩展函数)。
我想知道是否有人知道我可以使用的实施标准,或者确实有人已经这样做了 - 我在谷歌上空了。
作为示例(仅代表,仅尝试演示问题的 xpath 部分(这确实是问题 - 我打算在 schematron 中使用它的事实是没有实际意义的))
我的 XML:
Xpath 返回 A 类型的东西,它与 B 类型的东西在空间上相交(同样,我正在组成一个函数扩展名称空间和一个(非常愚蠢的)函数来举例说明我正在尝试完成的事情):
由于这似乎介于开发和 GIS 之间,因此我在 GIS 和 StackOverflow 上进行了交叉发布。
kotlin - 带有 logback(slf4j) 的 Kotlin 扩展日志功能
我创建了一个用于日志记录的扩展函数:
但我不确定它是否会在任何时候被调用,因为方法LoggerFactory.getLogger
调用getILoggerFactory
。
Mb 有人已经做过类似的事情,可以向我保证不会有任何内存泄漏:)?
现在我使用老式方法(在类中声明记录器字段):
但像这样的简单unit
测试:
显示与旧时尚选项相同的结果:
~*** TIME=0.02 sec
我在用着:
kotlin - 带有 vs 扩展运行的 Kotlin 范围函数
从我了解到的情况来看,它似乎是扩展函数T.run
,并且with
具有相同的目的,即创建对同一对象的多个调用进行分组的可能性,并返回 lambda 的最后一个对象作为其结果。
T.run()
具有在使用它之前应用可空性检查的优点。(正如本文指出的那样)
使用有什么好处with
?或者更好地说:是什么阻止我总是使用它T.run()
?谢谢
android - 字符串常量键的 SharedPreference 值的 Kotlin 扩展字段
扩展函数非常适合 android 中的 SharedPreference api。Jake Wharton 在本视频教程的时间码 32:30 有一个有趣的实现,他实现了 SharedPreferences 扩展功能,如下所示:
虽然这没关系,但它有点冗长。
Krupal Shah 的本教程解释了如何将 SharedPreferences 的 getter/setter 扩展函数简化为:
这很好,但括号暗示了可迭代的语义,IMO。虽然这不是世界上最糟糕的事情,但您只是希望您可以通过键常量本身实现 SharedPreferences 值的字段扩展。
我的问题是,有没有办法在 SharedPreferences 上实现这种类型的扩展?