当前位置: 首页 > news >正文

手机版自网站酒店网站建设策划方案

手机版自网站,酒店网站建设策划方案,网页拒绝访问怎么解决,网站的图片怎么做Kotlin 是一门现代但已成熟的编程语言#xff0c;旨在让开发人员更幸福快乐。 它简洁、安全、可与 Java 及其他语言互操作#xff0c;并提供了多种方式在多个平台间复用代码#xff0c;以实现高效编程。 https://play.kotlinlang.org/byExample/01_introduction/02_Functio… Kotlin 是一门现代但已成熟的编程语言旨在让开发人员更幸福快乐。 它简洁、安全、可与 Java 及其他语言互操作并提供了多种方式在多个平台间复用代码以实现高效编程。 https://play.kotlinlang.org/byExample/01_introduction/02_Functions 目录 引出hellofunction函数Infix Functions 中缀函数Operator Functions 算术函数变长参数vararg Parameters 变量kt中的null kt中的类泛型 Generics泛型函数Generic Functions 继承Inheritance超类Asiatic 总结 引出 1.kotlin初识 2.function函数变量null 3.泛型接口继承超类 hello package com.tianju.ktLearnfun main() { // 2println(Hello, World!) // 3 } function函数 返回值为Unit表示没有返回值, 类似与java里面的 voidUnit可以省略不写可以传两个参数参数带有默认值 package com.tianju.ktLearn// 返回值为Unit表示没有返回值, 类似与java里面的 void fun printMsg(msg: String): Unit {println(msg) }// Unit可以省略不写可以传两个参数参数带有默认值 fun printMsgWithPrefix(msg: String, prefix:String info) {println([wtt--$prefix] $msg) }fun sum(x: Int, y: Int): Int {return xy; }fun multiply(x: Int,y: Int) x*yfun main() {printMsg(Pet!)// 可以不传参带有默认参数的printMsgWithPrefix(Hello)printMsgWithPrefix(Hello,Peter)printMsgWithPrefix(prefix MMDD, msg HTTP)val sum sum(100, 300)println(sum)println(multiply(3,30)) }Infix Functions 中缀函数 具有单个参数的成员函数和扩展可以转换为中缀函数。 package com.tianju.ktLearn;// 具有单个参数的成员函数和扩展可以转换为中缀函数 fun main(){infix fun Int.times(str: String) str.repeat(this)println(2 times Hei!)// to 是标准库中的函数 kotlin.PairA, Bval pair WHTT to PPTSprintln(pair)// 自定义一个 onto 函数infix fun String.onto(str: String) Pair(this,str)val myPair MVC onto WWWprintln(myPair)val pet Person(peter,34)val Shi Person(Shirley,30)pet likes Shiprintln(pet.people[0]) }class Person(val name: String,val year: Int){val people mutableListOfPerson()infix fun likes(person: Person){people.add(person)}} Operator Functions 算术函数 Certain functions can be “upgraded” to operators, allowing their calls with the corresponding operator symbol. package com.tianju.ktLearn// 符号times 就是 下面的 乘号 * operator fun Int.times(str:String) str.repeat(this)fun main() {println(2 * Bye)val str Always forgive your enemies; nothing annoys them so much.operator fun String.get(range: IntRange) substring(range)println(str[0..14]) }变长参数vararg Parameters package com.tianju.ktLearnfun printAll(vararg msgs: String) {for (msg in msgs){println(msg)} }fun printWithPre(vararg msgs: String, prefix:String): Unit {for (msg in msgs) println([嘻嘻嘻--$prefix]$msg) }fun logs(vararg msgs:String){printAll(*msgs) }fun main() {printAll(pet,sh,wt)printWithPre(pet,sh,wt, prefix Hi)logs(sh,wtt,abc)}变量 Kotlin具有强大的类型推理能力。虽然你可以显式地声明变量的类型但你通常会让编译器通过推断来完成这项工作。Kotlin不强制执行不变性但建议这样做。本质上使用val而不是var。 val b: Int 1 // 2 val c 3 // 3声明一个不可变变量并对其进行初始化。 声明一个不可变变量并在不指定类型的情况下对其进行初始化。编译器推断类型Int。 kt中的null 在kt里面如果有一个可以为null需要在类型后面加上 问号 ?函数只能传入不为null的值参数类型后面加个 ? 问号后传入的值可以为null package com.tianju.ktLearnfun main() {var neverNull : String never Null// neverNull nullprintln(neverNull)// 在kt里面如果有一个可以为null需要在类型后面加上 问号 ?var nullable:String? can be nullnullable nullprintln(nullable)fun strLength(notNull:String ): Int {return notNull.length}// 函数只能传入不为null的值strLength(neverNull) // strLength(nullable) // 爆红val str descStr(null)println(str)println(descStr(hello are you ok?)) }/*** 返回值为String* 参数类型后面加个 ? 问号后传入的值可以为null*/ fun descStr(maybeStr: String?): String {if (maybeStr !null maybeStr.length0){return StrLength is ${maybeStr.length}}return null }kt中的类 在kt里面没有 new 关键字 泛型 Generics package com.tianju.ktLearn/*** 可以输入多个参数 vararg* E 泛型*/ class MutableStackE(vararg items: E) { // 1private val elements items.toMutableList()fun push(element: E) elements.add(element) // 2// 偷看一下fun peek(): E elements.last() // 3// 弹出栈顶元素fun pop(): E elements.removeAt(elements.size - 1)fun isEmpty() elements.isEmpty()fun size() elements.sizeoverride fun toString() MutableStack(${elements.joinToString()}) }fun main() {val mut MutableStackString(hello,pet)println(is mut empty?--- mut.isEmpty())print(mut)mut.push(wtt)println(mut)mut.peek()println(mut)val pop mut.pop()println(pop)println(mut)println(is mut empty?--- mut.isEmpty()) }泛型函数Generic Functions 如果函数的逻辑独立于特定类型则也可以生成函数。例如您可以编写一个实用程序函数来创建可变堆栈 继承Inheritance 超类Asiatic package com.tianju.ktLearn/*** open 关键字就表示是接口 interface*/ open class Dog{open fun fake(){println(wow wow !)} }class YourDog : Dog(){override fun fake() {println(miao wu ,wow)} }/*** 带参数的接口* interface with par*/ open class Cat(val name: String){fun sayHello(){println(A cat name is [$name] say hello)} }class Arya : Cat(Arya)/*** 超类 将构造函数参数传递给超类*/ open class Lion(val name:String,val age: Int){fun sayHello(){println(hi, every one, my name is $name, age is $age)} }/*** Asiatic声明中的name既不是var也不是val它是一个构造函数参数*/ class Asiatic(name: String) : Lion(name name, age 18)fun main() {val dog YourDog()dog.fake()val cat : Cat Arya()cat.sayHello()println(cat.name)val lion: Lion Asiatic(Peter)lion.sayHello() }总结 1.kotlin初识 2.function函数变量null 3.泛型接口继承超类
http://www.dnsts.com.cn/news/51378.html

相关文章:

  • 新媒体网站建设十大的经典成功案例新旧网站对比
  • wordpress中文版下载地址佛山百度seo代理
  • 网站推广哪种方法最企业管理系统软件开发
  • 建设网站平台费设计网站公司哪里好
  • 上海小学网站建设招标电器 东莞网站建设
  • 南乐县住房和城乡建设局网站广东线上营销推广方案
  • 站长推广网四川建设招投标网站
  • 长沙企业网站开发怎样建网站步骤
  • 管理网站用什么系统好大连网站建设开发
  • 给别人做网站多少钱国家级示范职业学校 建设网站
  • 天猫优惠券网站怎么做网站建设所需人力时间
  • 什么网站可免费发布信息自己做的网站如何让百度收录
  • 普陀酒店网站建设深圳软件外包公司都有哪些
  • 电子商务网站规划、电子商务网站建设万网域名注册官网gname
  • 做网站的教程贸易类文章网站
  • html演示网站广州电玩网站开发
  • 大英县住房和城乡建设局网站做网站 网络映射
  • 移动端网站开发最好的环境wordpress怎么采集淘宝客
  • 网站界面排版合肥建设信息网站
  • 西安网站制作首页wordpress升级php7.1
  • 长丰网站建设企业网站开发怎么样
  • 集团网站建设哪家更好wordpress米表插件
  • 推荐电商网站建设移动wap是什么意思
  • 个人网站好备案吗wordpress 网易云音乐
  • 国外前端 网站404页面模板
  • 免费永久个人网站注册网站专题页面文案设计
  • 上海小程序开发公司哪家好?青岛seo推广专员
  • 陕西建设部网站官网wordpress手机版论坛
  • 杭州建设项目审批网站兰州网络推广制度
  • 网站制作 wordpress广州网站建站平台