首页 > 其他分享 >Kotlin_变量与函数

Kotlin_变量与函数

时间:2023-03-19 11:47:28浏览次数:18  
标签:username String val Kotlin 函数 fun println hello 变量

变量部分

val info:String="hello"

val表示不可修改,kotlin的变量类型写在后面

var s:String="hello"

var表示可修改

const val PI=3.4

const表示静态常量

when表达式

fun main(){
    val week=0
    val info = when(week){
        1->"monday"
        2->"tuesday"
        3->"wens"
        4->"tuesday"
        5->true
        else->{
            println("hello") //is unit == void
        }
    }
    println(info)
}

when表达式 执行结果

特殊表达式

println("server response result:${if(isLogin)"ok" else "failed"}")

其中islogin是变量比如

val isLogin=true

函数部分

public fun main(){
    method("Chan")
}
private fun method(name:String,age:Int=10){
    println("name is $name age is $age")
}

一个fun和java类似不加private默认public,还有你可以自定义默认变量的值

你还可以指定你要赋值的形参

fun main(){
    login(username = "chan", userpasswd = "000000")
}
fun login(username:String,userpasswd:String){
    println("user:$username passwd:$userpasswd")
}

函数返回值

fun main(){
    dow()
}
//void=unit
fun dow():Unit{
    return println("hello")
}

和变量的逻辑一样直接写后面

in表达式

when(num){
        1-> TODO("err")
        in 0..59-> println("failed")
        in 60..70 -> println("pass")
    }

匿名函数

val method2={v1:Double,v2:Float,v3:String->
        "v1$v1,v2$v2,v3$v3"
        true
    }
    println(method2(12.2,22f,"hello"))

花括号里面的最后一行是返回值

回调函数(我自己的叫法)

fun loginApi(username:String,password:String,response:(String,Int)->Unit){
    if (username=="user") {
        response("succ",200)
    }

}

loginApi("user","123456"){msg:String,code:Int->
        println("$msg $code")
    }

 

标签:username,String,val,Kotlin,函数,fun,println,hello,变量
From: https://www.cnblogs.com/Frank-dev-blog/p/17232682.html

相关文章

  • tensorflow中交叉熵损失函数详解
    1前言tensorflow中定义了3个交叉熵损失函数:softmax_cross_entropy_with_logits(logits,labels)softmax_cross_entropy_with_logits_v2(logits,labels)sparse_softm......
  • 函数版学生管理系统
    packagemainimport( "fmt" "os")var( allStmap[int64]*student)typestudentstruct{ idint64 namestring}funcnewStudent(idint64,namestr......
  • "全类型" 排序(选择、冒泡) 回调函数
    直接上代码若代码有可优化或某处不合理,欢迎指正,不胜感激。#include<stdio.h>#include<stdlib.h>#include<string.h>intcompare_double(void*dst_addr,void*sr......
  • Day 17 17.1 python之变量的作用域
    一、变量作用域变量的作用域Python是静态作用域,也就是说Python中,变量的作用域源于它在代码中的位置在不同的位置,可能有不同的命名空间。命名空间是变量作用域的体现......
  • 110Js自执行函数
    JavaScript自执行函数(Self-ExecutingFunctions),也被称为立即执行函数(ImmediatelyInvokedFunctionExpressions,IIFE),是一种常见的JavaScript编程模式。这种模式的基本思路......
  • SQL函数大全和用法
    正常Gender字段,因为一些原因,使用了bit类型,0表示男,1表示女,我们在查询的时候,只会显示ture或者falseselectIdas编号,Nameas姓名,Genderas性别FromTable_User......
  • 函数【返回值】
    0.本文结构概述若函数无返回值,默认为int类型返回值小于4B,存入寄存器EAX中返回值大于4B小于8B,存入寄存器EAX和EDX中返回值大于8B放入栈区的临时空间1.若函数无返回......
  • 如何理解strcpy函数中的赋值语句?
    关于strcpy函数的赋值语句如何理解while(*s++=*t++)?voidstrcpy(char*s,char*t){while(*s++=*t++);}该语句等价于while(*(s++)=*(t++))。赋值......
  • webpack原理(3):Tapable源码分析及钩子函数作用分析
    webpack本质上是一种事件流的机制,它的工作流程就是将各个插件串联起来,而实现这一切的核心就是Tapable,webpack中最核心的负责编译的Compiler和负责创建bundles的Compilation......
  • nodejs的全局变量探讨之二
    之前写过一篇博文对nodejs全局变量做了一些验证,本篇博文将继续探讨这个话题。建议先看下前篇博文:​​https://blog.51cto.com/livestreaming/5258039​​好了,我们开始今天的......