Kotlin的变量、函数fun

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

前言

本章讲解Kotlin的基础知识,对比java 语言特征帮助理解。


基本语法概述

Java 语法概述

Java中一切皆为对象
Java有四类八种基本数据类型以及他们的包装类

这里写图片描述
Java中不支持函数,只有方法的概念,且所有的方法都必须定义在类中
Java中默认的修饰符为default,一共有public,protected,default,private四种修饰符
Java中语句结尾必须用封号
Java中Package(包)和目录路径统一的,Package就是目录

Kotlin 语法概述

Kotlin 中一切皆为对象 ,任何变量都有相应的方法和属性
Kotlin 没有基本数据类型以及包装类,但有内置数据类型

这里写图片描述
Kotlin 中字符Char不能转化为数字,布尔用Boolean表示
Kotlin 中的函数也是对象,可作为参数和返回值,也可以不用写在类里面
Kotlin 中默认的修饰符为public,一共有public,internal,protected,private 四种修饰符
Kotlin 中语句结尾不用封号
Kotlin 中Package(包)和目录路径不是统一,毫无关系,比如:demo/a/test.kt目录文件,包名并不一定demo.a


定义变量

Java变量定义
Java中没有明确的变量和常量的概念,但可以用final关键字表示变量不可以修改
Java中有成员变量局部变量

 int n =30//定义n变量,并初始赋值30
 private int ok;   //基础数据类型的成员变量默认有初始值,int为0
 final int x =30;  //用final关键字修饰,相当于常量

kotlin变量定义
kotlin中,定义变量要以var开头,常量用val开头,后面接变量名,数据类型要放到变量名后面,之间用隔开
kotlin中除了有成员变量局部变量,还有全局变量,定义在类外面,项目全局可以使用

 var n:Int =30           //定义n变量,并初始赋值30
 private var ok:Int =0   //Kotlin的内置成员变量默认没有初始值,定义时需手动赋值
 val x:Int =30         //用val表示常量
 var x =30             //如果变量申明时有赋值,可以不用定义类型,kotlin会根据值自动推测类型
 var x:Int? =null     //?号表示X可以为空,使用时也不会抛nullPoint异常
 var x:Int!! =null     //!!号表示X可以为空,使用时也会抛nullPoint异常

定义函数

函数由 函数头关键字(fun ,func,funtion)函数名(name),参数(params)返回值(return)组成

Java方法
Java中没有函数,只有方法的概念
Java中方法没有函数头,直接写返回类型+方法名即可,无返回类型则用void表示

int add(int x,int y){
return x+y;
}

void add(int x,int y){
System.out.print(x+y)
}

Kotlin函数
Kotlin中函数头关键字用fun表示
Kotlin中返回值卸载函数定义末尾,之间用:隔开,没有返回值用unit表示,unit可省略

//Int表示返回值
fun add(x:Int,y:Int):Int{
return x+y;
}

//Unit表示无返回值,可省略
add(int x,int y):Unit{
println(x+y)
}

字符类型

这里要单独描述字符类型,Kotlin中的字符类型与Java中不同的是,在Kotlin中,字符不能直接看做数字,不能直接判断Char类型的ASCII

boolean equal(Char c){
//Java中可以直接比较
  if(c==97)
  return true
  else
  return false
}
fun equal(Char c):Boolean{
//Kotlin中编译错误
 return  if(c==97) true else false
}
fun equal(Char c):Boolean{
//Kotlin中编译通过
 return  if(c=='a') true else false
}
SpringBoot文件上传实战:MultipartFile重复读取的3种方法(附避坑指南) 本文详细介绍了SpringBoot中处理MultipartFile重复读取的3种实用方法,包括字节数组缓存法、临时文件法和流重置法,并提供了避坑指南和性能优化技巧。特别适合需要多次读取上传文件内容的开发者,帮助解决InputStream流只能读取一次的问题。 阅读详情

相关推荐

别再到处找包了!Keil5芯片支持包(Pack)最全管理指南:安装、更新、迁移与离线备份

本文详细解析了Keil5芯片支持包(Pack)的全生命周期管理,包括安装、更新、迁移与离线备份的工程化解决方案。针对STM32F10x等常见芯片,提供了高效获取Pack的策略、版本管理技巧及团队协作方案,帮助开发者解决常见的'Device Family Pack missing'等问题,提升嵌入式开发效率。

weixin_28729205的博客 503

Kotlin入门(二)——函数fun

官网         官网链接。 定义         函数通过fun关键字进行定义。 参数         参数的定义形式为:name: type。 参数默认值         每一个参数都可以有默认值。如: fun main(args:Array){ println(test(2)) } fun test(a:Int,b:Int = 3):Int{//b的默认值是3,所以调用

飞鸟 7840

Java开发者必看:如何快速对接七大主流快递API(附完整代码示例)

本文为Java开发者提供了快速对接顺丰、京东、DHL等七大主流快递API的实战指南。文章深入剖析了不同API的认证、通信协议与参数差异,并提供了高可用的HTTP客户端配置、通用签名工具、SOAP请求处理以及可扩展的领域模型与适配层设计等完整代码示例,帮助开发者构建统一、健壮的物流集成框架,显著提升开发效率。

tech5的博客 705

Kotlin关键字三——fun与方法

前两节笔记分析了及,这次看下修饰方法的关键字fun

小天花藏 1650

Kotlin入门语法

1.Kotli中的变量 /* 在Kotlin中,变量只分为val和var. 而val变量只能被赋值一次,相当于在初始化进行赋值后,后续就不能改动该变量。 而var变量是能够重复赋值。 例: val a = 1 var a1 = 2 在Kotlin中,常用的变量类型有: Int (整数类型) String (字符串类型) Boolean (布尔值类型) Double (浮点数类型) */ 2.Kotlin中的函数 函数声明: fun + 函数名(参数类型):返回值 例子: fun xiaosu(su:S

xiaosuC的博客 2004

Kotlin教程】kotlin函数

kotlin教程】本专栏作者会更新关于kotlin的相关知识点,欢迎大家评论和提建议! 【有需求请联系作者!】

程序开发 304

kotlin基础(一) kotlin基础语法

kotlin基础 这次的内容主要是kotlin的基本要素:变量函数、类。同时学习kotlin的控制语句,if、when、while等,并清楚与java的区别 基本要素:函数变量 函数 从main函数引入 fun main(args: Array<String&

菜师傅 348

Kotlin变量函数

变量Kotlin中定义变量与JAVA有很大的区别,JAVA中比如你想定义一个整型变量你的这么写: private int i = 0; 如果是一个字符串变量的话你得这么写: private String s = ""; 其中private是访问控制修饰符,int和String是变量类型,=号后面跟的是具体的值。 而Kotlin中定义一个变量,只允许在变量前声明两种关键字:val和var。 val:value的简写,用来声明一个不可变的变量,这种变量在初始化赋值之后就再也不能重新赋值,对应JAVA中的

a644388262的博客 391

变量函数-kotlin小笔记

~本特利~ 变量 Kotlin中定义一个变量,只允许在变量前声明两种关键字:val和var。 val(value的简写的简写)用来声明一个不可变的变量,这种变量在初始赋值之后就再也不能重新赋值,对应Java中的final变量。 var(variable的简写的简写)用来声明一个可变的变量,这种变量在初始赋值之后仍然可以再被重新赋值复制,对应Java中的非final变量fun main() { val a = 10 var b = 5 b = b + 3 pri

~本特利~的博客 274

2.3--Kotlin编程之本:变量函数

2.3.1变量 Kotlin 声明变量 只有val 和 var 两种 ,其中 val 是声明常量的类似Java 中的 final,var 是声明变量的 ,Kotlin 不需要设置变量的类型,因为Kotlin 拥有出色的类型推导机制可以自动识别,而且,Kotlin 代码结束后面不需要添加分号! 当然在只声明变量没有给予直接赋值的情况下Kotlin 是不知道这个变量是什么类型的,我们可以这样声明变...

CSDN_DaShuiNiu的博客 204

Kotlin与Java语法区别_kotlin语法和java语法对比,零基础入门到精通,收藏这篇就够了

Kotlin作为现代编程语言,在语法上与Java既有相似之处,也有许多创新和改进。以下是Kotlin与Java在语法上的主要区别: Kotlin Kotlin使用(不可变)和(可变)替代Java的final和非final变量 类型推断是Kotlin的默认行为 2. 函数定义 Java Kotlin Kotlin使用< Java开发的就业市场正在经历结构性调整,竞争日益激烈 传统纯业务开发岗位(如仅完成增删改查业务的后端工程师)的需求,特别是入门级岗位,正显著萎缩。随着企业技术需求升级,市场对J

Libra1313的博客 1061

Kotlin学习——基础语法

一、函数定义 1、函数定义使用关键字 fun,参数格式为:参数 : 类型 fun sum(a: Int, b: Int): Int { // Int 参数,返回值 Int return a + b } 2、表达式作为函数体,返回类型自动推断: fun sum(a: Int, b: Int) = a + b public fun sum(a: Int, b: Int): Int = a...

zxf_2016的博客 247

Kotlin基础语法的使用

Kotlin 文件以 .kt 为后缀 以Android项目为例: package com.click.kotlindome import android.support.v7.app.AppCompatActivity import android.os.Bundle class MainActivity : AppCompatActivity() { override fun onCr...

jhonjson的博客 157

Kotlin基础函数变量

1. 函数 fun max(a: Int, b: Int): Int { return if (a > b) a else b } 函数声明以关键字fun开始,函数名称max 在kotlin中,if是表达式,不是语句,表达式和语句的区别是:表达式有值,语句没有值 Java中所有控制结构都是语句 Kotlin中除了循环以外大多数控制结构都是表达式 ...

蓝枫 358

Kotlin-1变量函数

Kotlin学习 —— 1.变量函数 1. 常量与变量定义 Kotlin定义常量和变量时需要定义时进行初始化,也可以没有初始化值,但是在引用前必须初始化;在Android开发中,作为属性必须要初始化(防Null) 关键字:常量:val ,变量:var 格式:[var/val] <标识符> : <类型> = <初始化值> val name : String = "" var age : Int = 0 var level : Int level = 5 var price

Clear亮的博客 260

Kotlin实战》-第02章:Kotlin基础

读书笔记:《Kotlin实战》-第02章:Kotlin基础

crazyf2015的博客 834

kotlin

wu

zero_ko的博客 1108

Kotlin基础学习记录

Kotlin的初步学习 fun main(args:Array<String>){ print(""); } fun 函数的声明,固定写法 main方法是程序的入口,mian函数是程序执行的时候第一个要找的函数 接收参数名是args,数据类型字符串 print还是打印 var 声明变量 val 生命常量,相当于一个只读的数据,一旦声明,这个值将不能被改变 Math 数学的意思 sq...

weixin_43500320的博客 391

Kotlin 基础(一)基础语法

Kotlin 基础(一)基础语法包的定义定义变量基础用法定义可空变量后期初始化与延迟初始化注释字符串模板定义函数 包的定义 在Kotlin中相关包的定义与Java基本相同,但是Kotlin中包的引用相比Java更加的灵活广泛,Kotlin中目录与包的结构无需匹配:源代码可以在文件系统的任意位置。而Java中源代码必须在对应的目录下。 package my.demo import java.util...

Handler棒棒哒的博客 388

Android开发之Kotlin基础(零散版2)

by lazy要求属性声明为val,即不可变变量,在java中相当于被final修饰,这意味着该变量一旦初始化后就不允许再被修改值了,基本类型是值不能被修改,对象类型是引用不能被修改。可是有的时候,我并不想声明一个类型可空的对象,而且我也没办法在对象一声明的时候就为它初始化,那么这时就需要用到。var 很容易理解,JavaScript 等其他语言也通过该关键字来声明变量,它对应的就是 Java 中的变量。在很多 Kotlin 的学习资料中,都会传递一个原则:优先使用 val 来声明变量

wj3034547573的博客 419

Kotlin基础语法(二)

*下面是lambda形式定义的加法操作:x : Int , y : Int -> x + y } /*由于支持类型推导,我们可以采用两种方式进行简化:*/ // 方式一: val sum1 = {x : Int , y : Int -> x + y } // 方式二: val sum2 :(Int , Int) -> Int = {x , y -> x + y } //现在总结一下Lambda的语法 /* 1、⼀个Lambda表达式必须通过{}来包裹;

乐褀的博客 287

第一阶段:Kotlin基础 (1-2周)必学语法

fun createUser(name: String, age: Int = 18, city: String = "北京"): String {// 调用:createUser("李四") 或 createUser("李四", 25): "默认名称" // 结果是 "默认名称"var userAge: String = "25" // 不可为空。createUser(name = "王五", city = "上海")val name = "张三" // 自动推断类型。

qq_16677155的博客 1024
上一篇: Kotlin的安装、编译、运行
下一篇: kotlin的 if,when,for,while语句
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值