一个swifter的kotlin学习——kotlin基本语法

追到梦的魔术师 追到梦的魔术师     2022-09-01     620

关键词:

刚刚结束的谷歌io大会真是干货满满的,身为程序员最让我刚兴趣的还是谷歌宣布kotlin成为安卓第一开发语言

这里写图片描述

这确实是个比较震撼的消息,身为移动端开发的我,势必要及时掌握这门开发语言。

个人看了kotlin的中文文档,感觉它的语法和swift十分相像(到底谁抄袭谁~),所以如果你之前效果swift开发的iOS程序,掌握这门语言难度不大!废话少说,下面是干货:

1、常量与变量

常量:
val a: Int  = 1
val b = 1
val c: Int //当没有初始化值时必须声明 类型
c = 1 //赋值

变量:
var x = 5
x += 1

(swift 的常量let、 变量var,变量的定义竟然一样~~)

2、函数

//加法函数
fun sum( a: Int, b: Int): Int {

     return a + b
}

kotlin 语言和swift语言一样,诶局代码不用非要用“;”结束

上面的代码实际可以继续简化

fun sum( a: Int, b: Int)sum = a + b

该函数的返回类型会随=后面的变量来决定

无返回值的时候—Unit:相当于void

 fun printSum(a: Int, b: Int): Unit {

        print( a + b )
} 

Unit 可以省略

 fun printSum(a: Int, b: Int) {

        print( a + b )
} 

3、main函数

fun main(args: Array<String>) {
}

4、if条件语句

fun max(a: Int, b: Int): Int {

    if(a>b)
          return a
    else 
        return b
}

简化写法

 fun max(a: Int, b: Int) = if (a>b) a else b

5、使用可空变量以及空值检查

swift有一种叫做可选型
kotlin也有这种该类型操作

fun parseInt(str : String): Int?{
}

该函数即有可能返回Int也有可能返回null
所以使用时要进行null判断

fun main(args: Array<String>) {

      val x = parseInt(args[0])
      val y = parseInt(args[1])

      //这里使用x、y容易出现错误,因为x和y有可能是null


       if (x != null && y != null){
          print(x * y)
        }

}

类型判断符 is

if(str is String){
    //判断类型
       return str.length
}else return null 

is 可以进行类型自动转换

fun getStringLength(obj : Any): Int? {

      if ( obj is  String){
         //obj 将会在这个分支自动转换为String类型
               return obj.lengrh
      }
    //obj 还是Any类型
     return null
}

android为什么要从java改用kotlin

Android为什么要从Java改用Kotlin->返回总目录<-文章目录一、Kotlin1、Kotlin是来自哪个公司2、为什么要学习Kotlin二、Android的Kotlin优先方法1、为什么要优先使用Kotlin进行Android开发?2、Kotlin优先意味着什么?一、Kotlin1、Kotlin是来... 查看详情

kotlin学习的一些笔记

...通过Kotlin得到什么准备工作AndroidStudio安装Kotlin插件创建一个新的项目在AndroidStudio中创建一个项目配置Gradle把MainActivity转换成Kotlin代码测试是否一切就绪类和函数怎么定义一个类类继承函数构造方法和函数参数编写你的第一个类... 查看详情

如何在 Kotlin 中获取当前的本地日期和时间

...、分钟和秒)?我尝试通过LocalDateTime.now(),但它给了我一个错误说CallrequiresAPILevel26(currminis21)。如何在Kotli 查看详情

kotlin语法学习(代码片段)

...va中有很多的基本类型和一些引用类型,但是在Kotlin中定义一个变量只允许在变量前面声明两个关键字:val和varval(value的简写)用来声明一个不可变的变量,这种变量在初始赋值之后再也不能重新赋值,相当于java当中的final修饰的变量va... 查看详情

如何在 iOS 项目中添加两个或多个 kotlin 原生模块

...TL;DR;而不会出现duplicatesymbols错误?详细问题让我们假设一个多模块KMP项目如下,其中存在一个适用于Android的本机应用程序和一个适用于iOS的本机应用程序以及两个用于保存共享kot 查看详情

swifter.json简介(代码片段)

...也都用过了。今天给大家介绍另外一款json的序列化工具Swifter.Json。GitHub地址:https://github.com/Dogwei/Swifter.Json/wikiWiki地址:https://github.com/Dogwei/Swifter.JsonSwifter.Json强大之处1:支持.Net已知 查看详情

在不调用属性的情况下获取休眠惰性关系 n+1 - Kotlin

...】:2019-03-1408:42:53【问题描述】:我正在使用休眠并执行一个简单的查询来选择所有给定的实体。我只想要实体而不是它的关系。然而,hibernate确实以n+1的方式获取关系和关系的关系。这是一个Spri 查看详情

如何将改造回调响应中的回调从 java 转换为 Kotlin

...】:2019-05-0900:50:02【问题描述】:我是Kotlin的新手,我有一个简单的问题:我将我的所有项目从java转换为kotlin,并成功地纠正了文档中的所有错误。但我没有成功将java改造回调响应中的回调转换为kot 查看详情

kotlin学习心得

...,从java切换到kotlin基本不需要成本。最近在用kotlin在写一个项目,刚开始写代码感觉比较别扭,一旦用熟练后,再切换回java,就会感觉到java的语法有点累赘了。下面将使用kotlin中的心得分享给大家。语法见: 查看详情

kotlin学习与实践类接口

...引用等*Kotlin也一样是使用interface来声明接口*如下:声明一个简单的接口interfaceClickable{funclick()funlongPress()=println("longPress") 查看详情

从命令行运行时混合java和kotlin代码的classnotfoundexception

我在一个演示项目中混合了Java和Kotlin代码,我想从commandline运行。对于只有java,我能够用java-jarfoo.jar运行程序但是当我使用Kotlin代码中的任何类时,它会生成java.lang.NoClassDefFoundError:kotlin/jvm/internal/Intrinsics我尝试了不同的解决方... 查看详情

全新升级kotlin系统入门与进阶

第1章课程介绍(需具备Java基础)本章主要介绍什么是Kotlin,课程安排,以及开发环境的配置。第2章数据类型(难度系数:☆)本章主要讲解Kotlin的基本词法,从类型系统入手为大家介绍Kotlin中都存在哪些类型,以及相关的特性... 查看详情

swifter.json--在.net平台上的一个功能强大,简单易用,稳定又不失高性能的json序列化和反序列化工具。(代码片段)

Swifter.JsonGithubWiki在.Net平台上的一个功能强大,简单易用,稳定又不失高性能的JSON序列化和反序列化工具。Swifter.Json已经经过了大量测试和线上项目中运行许久来确保它的稳定性。特性1:支持.Net上绝大多是的数据类型,且轻松扩... 查看详情

kotlin基本的语法学习(代码片段)

...义变量的方式和Java区别很大,在Java中如果想要定义一个变量,需要在变量前面声明这个变量的类型,比如说inta表示a是一个整型变量,Stringb表示b是一个字符串变量。而Kotlin中定义一个变量,只允许在变量前... 查看详情

使用 kotlin 的 recyclerview 中的数据绑定导致问题

】使用kotlin的recyclerview中的数据绑定导致问题【英文标题】:Databindinginrecyclerviewusingkotlincausingissue【发布时间】:2021-12-3001:10:59【问题描述】:这是我的应用级gradle文件applyplugin:\'com.android.application\'applyplugin:\'kotlin-android\'applyplug... 查看详情

kotlin学习——kotlin计算器(代码片段)

我们也学习了这么久的Kotlin了,我们来用Kotlin写一个计算器的小案例吧,这也是比较简单的示例了。我们先来看下效果:先看下这个UI,上面是一个EditText下面是一个RecyclerView,先来写个适配器吧,我们来... 查看详情

kotlin-30分钟快速入门

1.定义变量在kotlin中,通过var或者val来定义,区别就是val定义的变量只能读不能修改,var则可以修改。vala:Int=1//等价于java:finalinti=10;a=2//错误,变量a是只读varb:Int=2b=15//okkotlin中定义的变量的格式[变量名]:[变量类型]另一方面,kotkin... 查看详情

使用 kotlin + quarkus 注入一些依赖项时出错

...8-2220:11:00【问题描述】:我想在我的Kotlin资源文件中包含一个依赖项。但我不能。我制作了这个教程:https://quarkus.io/guides/rest-client-guide但是,为了启动这个项目,我在我的项目中包含了扩展“kot 查看详情