如何在Kotlin的默认文档工具KDoc中插入代码片段?
在Java中,我可以使用以下内容:
/**
* Example usage:
*
* <pre>
* <code>@JavaAnnotation
* public void foo() {
* // Code
* }
* </code>
* </pre>
*/
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface JavaAnnotation {}
Run Code Online (Sandbox Code Playgroud)
Kotlin似乎没有相应的东西.我尝试使用Markdown,但在行结束后插入2个空格不会换行.
在定位Java互操作时,应该使用什么类型的惰性集合?
Sequence<T> 对于Kotlin调用者来说最有意义,因为默认情况下它的延伸函数是懒惰的,但强制Java调用者处理Kotlin stdlib类型并手动转换序列迭代器(序列不会扩展迭代!)Iterable<T> 由于for循环中的隐式使用,Java调用者有意义,但会导致毫无疑问的Kotlin调用者由于非延迟扩展函数而意外丢弃懒惰Stream<T> 对于Java和Kotlin调用者来说都是最佳的,但可能有开销并且是Java 8+(Kotlin目标6+)HashMap这是一个很好的设计模式来强制一个类不在任何基于散列的集合( 、、HashSet等)中使用,或者这可能会产生意想不到的后果吗?
class DoNotUseInHashBasedCollection {
@Override
public int hashCode() {
throw new UnsupportedOperationException();
}
}
Run Code Online (Sandbox Code Playgroud)