Tag: 科特林

Kotlin,JPA和@Transient

我有一个实体类,我已经从Java迁移到Kotlin。 其中一个属性( inetAddress )用@Transient注释,以防止它被持久化到关系数据库。 但是,JPA(Hibernate实现)没有看到这个注释,并把它放在数据库中,因为它是自己的字段。 当这个类用Java编写时,这一切都可以正常工作。 有谁知道如何正确注释这个Kotlin类,以便JPA / Hibernate将看到@Transient注释,而不是将inetAddress属性放在数据库中? package infr.audio.model import com.fasterxml.jackson.annotation.JsonIgnore import com.fasterxml.jackson.annotation.JsonProperty import infr.audio.messages.InetAddressWrapper import java.io.Serializable import java.net.InetAddress import javax.persistence.Column import javax.persistence.Entity import javax.persistence.GeneratedValue import javax.persistence.Id import javax.persistence.NamedQueries import javax.persistence.NamedQuery import javax.persistence.Table @Entity @Table(name = “DIS_JOCKEY”) @NamedQueries(NamedQuery(name = “DisJockeyInfo.find”, query = “SELECT m FROM DisJockeyInfo m”), NamedQuery(name = “DisJockeyInfo.findByReservationId”, query = “SELECT […]

Kotlin字符串到Int数组

我正在寻找最有效的方式来转换一个字符串 “[1,2,3,4,5]” 到Kotlin中的Int [1,2,3,4,5]数组

Kotlin编程基础

我正在努力学习Kotlin,并且在使用函数的时候遇到了一个问题。 fun main(args: Array) { println(max(20, 10)) } fun max(a: Int, b: Int) = if (a > b) a else b 在这里我有一个函数MAX。 现在在函数MAX的上面的实现和下面的实现之间有什么区别,虽然都给出相同的输出。 fun max(a: Int, b: Int): Int?{ if(a > b) return a else return b }

什么是Kotlin意图的概念?

我想了解这个Kotlin意图背后的概念。 Activity::class.java在Kotlin中意味着什么?

在Android / Kotlin上加倍的字符串

我必须使用Kotlin将字符串转换为Android上的双精度字符串。 以下是应该在Kotlin工作,但不(没有这样的方法): var dbl = “1.0”.toDouble() 以下爪哇方式也不起作用: var dbl = Double.parseDouble(“1.0”) 显然, Android上的String类既没有Kotlin API,Double也没有常用的Java API? 是否有任何与Kotlin 在Android上的 优雅方式? 现在,我正在使用这个( 这个工作 ,但它是丑陋的): var dbl = java.lang.Double.parseDouble(“1.0”) 该项目刚刚使用Android Studio创建,使用以下版本: ext.kotlin_version = ‘1.1.51’ minSdkVersion 23 targetSdkVersion 26 因为我认为这是Android API和Kotlin API之间的一些不匹配。

Kotlin通用对话框不显示

无法显示通用对话框。我是Kotlin中的新手。有没有人遇到这个问题? 我努力了 class CommonStaticClass { fun showCommonPopUp(activity: Context, msg: String,drawable: Int): Dialog { val metrics = activity.resources.displayMetrics val dev_width = metrics.widthPixels val dev_height = metrics.heightPixels val dialogCommon = Dialog(activity) dialogCommon.window.setBackgroundDrawable(ColorDrawable(android.graphics.Color.TRANSPARENT)) dialogCommon.window.requestFeature(Window.FEATURE_NO_TITLE) dialogCommon.setContentView(R.layout.dialog_alert) dialogCommon.setCancelable(false) dialogCommon.setCanceledOnTouchOutside(false) dialogCommon.window.setLayout((dev_width* 85)/ 100, (dev_height* 25) / 100) val tv_headerObj = dialogCommon.findViewById(R.id.txt_header) as TextView val img_smileOBJ = dialogCommon.findViewById(R.id.img_smile) as ImageView img_smileOBJ.setImageResource(drawable) tv_headerObj.text […]

为什么在类路径中有不同版本的Kotlin JAR?

我决定在AS 3.0中添加一对Kotlin文件到现有的Java Android项目中。 一旦我添加Kotlin文件,我让助手添加适当的行到我的build.gradle文件,特别是: project build.gradle buildscript { ext.kotlin_version = ‘1.2.21’ //… dependencies { classpath “org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version” app build.gradle // top of file apply plugin: ‘com.android.application’ apply plugin: ‘kotlin-android’ //…. dependencies { compile “org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version” 不幸的是,所有的构建都会产生这样的警告 Warning:Runtime JAR files in the classpath should have the same version. These files were found in the classpath: /Users/sddsfsd/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk7/1.2.21/88bfff5aa470143a83b0bc5ec00c0be8cabd7cad/kotlin-stdlib-jdk7-1.2.21.jar (version 1.2) […]

为什么Kotlin比Scala编译速度更快?

当我们阅读Kotlin编程语言的维基百科描述时,它指出: JetBrains的领导Dmitry Jemerov说,大多数语言没有他们正在寻找的function,除了斯卡拉。 不过,他认为Scala的编译时间缓慢是一个明显的缺陷[4]。 Kotlin的既定目标之一就是尽快编译Java。 他们是如何实现这一目标的? 为什么Scala编译时间太慢,以至于Kotlin的创建者都不能接受? 换句话说,Scala编译器的哪些特性使其比Kotlin编译器慢呢?

在Kotlin创建文件ZIP

我正在尝试在Kotlin中创建一个zip文件。 这是代码: fun main(args: Array) { var files: Array = arrayOf(“/home/matte/theres_no_place.png”, “/home/matte/vladstudio_the_moon_and_the_ocean_1920x1440_signed.jpg”) var out = ZipOutputStream(BufferedOutputStream(FileOutputStream(“/home/matte/Desktop/test.zip”))) var data = ByteArray(1024) for (file in files) { var fi = FileInputStream(file) var origin = BufferedInputStream(fi) var entry = ZipEntry(file.substring(file.lastIndexOf(“/”))) out.putNextEntry(entry) origin.buffered(1024).reader().forEachLine { out.write(data) } origin.close() } out.close()} 压缩文件被创建,但里面的文件已损坏!

用Kotlin完成另一个Android的活动

我试图用kotlin完成另一个(android)的活动。 我知道用java做的wat是用下面的代码( https://stackoverflow.com/a/10379275/7280257 ) 第一次活动: BroadcastReceiver broadcast_reciever = new BroadcastReceiver() { @Override public void onReceive(Context arg0, Intent intent) { String action = intent.getAction(); if (action.equals(“finish_activity”)) { finish(); // DO WHATEVER YOU WANT. } } }; registerReceiver(broadcast_reciever, new IntentFilter(“finish_activity”)); 在其他活动上: Intent intent = new Intent(“finish_activity”); sendBroadcast(intent); 出于某种原因,将java活动转换为kotlin不会提供有效的输出,如果有人可以给我正确的语法来正确使用kotlin,我会感激 kotlin输出(第一个活动) [确定] : val broadcast_reciever = object : BroadcastReceiver() […]