下载APP

kotlin与java实现混编基础看这篇就够了

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第14天,点击查看活动详情

前几年一直关注安卓,想换个方向,奔着移动端大步向前,由于比较懒就一直停留在想法,这不今天勤快点,动手搞了一个基础的java和kotlin混编,和大家总结分享一下。

首先需要了解什么事kotlin,kotlin中文网上面有详细的讲解,比如入门教学、下方有移动端、服务端和web端三大方向的选择。具体网址如下

kotlin中文网: https://www.kotlincn.net/

经过短暂了解学习,我们进入到正题

创建我们的项目

我这里已经创建好了,就和我们平常创建java项目步骤一样

image.png

pom文件

接下来在pom文件中引入我们的kotlin包,kotlin.version版本我们选择的是1.2.50

<dependency>
    <groupId>org.jetbrains.kotlin</groupId>
    <artifactId>kotlin-reflect</artifactId>
    <version>${kotlin.version}</version>
</dependency>
<dependency>
    <groupId>org.jetbrains.kotlin</groupId>
    <artifactId>kotlin-runtime</artifactId>
    <version>${kotlin.version}</version>
</dependency>
<dependency>
    <groupId>com.fasterxml.jackson.module</groupId>
    <artifactId>jackson-module-kotlin</artifactId>
    <version>2.9.6</version>
</dependency>
<dependency>
    <groupId>org.jetbrains.kotlin</groupId>
    <artifactId>kotlin-stdlib-jdk8</artifactId>
    <version>${kotlin.version}</version>
</dependency>
<dependency>
    <groupId>org.jetbrains.kotlin</groupId>
    <artifactId>kotlin-test</artifactId>
    <version>${kotlin.version}</version>
    <scope>test</scope>
</dependency>

上面的准备工作我们完成了,接下来我们开始我们代码

controller代码开发

kotlin的变量定义和我们的js定义有些类似,可以用我们var来定义变量,而且结尾也不用使用分号

比如 var coupon = Coupon()

在定义接口参数的时候,和java也有点区别,java中定义变量是类型在前,而我们kotlin定义变量是类型在后,而且中间有冒号隔开,返回类型在参数之后跟随,以冒号隔开,具体如下所示

open fun homeList(type : String?,couponName : String?,couponType : String?,@RequestParam status: String): String {

这里面我们定义了几个参数,分别为type、couponName、couponType、status

我们的返回类型就是String类型。

具体代码如下

 /**
  * 优惠券列表
  */
@RequestMapping(value="lists")
open fun homeList(type : String?,couponName : String?,couponType : String?,@RequestParam status: String): String {

     var coupon = Coupon()
     if(!StringUtils.isEmpty(type)){
         coupon.type = type?.toInt()
     }
     coupon.title = couponName
     coupon.status = status.toInt()
     coupon.couponType = couponType?.toInt()
     val pageInfo = couponService.test()
     return "success";
 }

这里我们基础的混编就结束了。谢谢大家!

喜欢,请关注公众号《coder练习生》

在线举报