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

安徽省工程建设网站seo优化工作内容

安徽省工程建设网站,seo优化工作内容,wordpress迁移需要重新安装,南京制作网页公司从今天开始慢慢总结kotlin的相关知识#xff0c;和大家一起学习进步。 1#xff1a;变量 kotlin的变量定义有两种val和var。 第一种val val i10#xff1b;val定义的变量为不可改变量#xff0c;如上面i10后#xff0c;如果我们添加 i10首先编译器#xff08;androi…从今天开始慢慢总结kotlin的相关知识和大家一起学习进步。 1变量 kotlin的变量定义有两种val和var。 第一种val val i10val定义的变量为不可改变量如上面i10后如果我们添加 i10首先编译器android studio就会提示我们报错! 错误信息是Val cannot be reassigned 第二种 var var num 10num 102函数 fun addSum(i1: Int, i2: Int): Int {return i1 i2}看下上面的代码我们简单分析下组成 fun函数定义关键字addSum函数名i1Int对应参数名以及参数类型中间用分隔 也就是说函数中变量的使用方式是name: type的格式 当然我们还是给参数指定默认值 怎么去写呢 很简单 fun addSum2(i1: Int0, i2: Int1): Int {return i1 i2} 这么我们使用的时候就可以这么写 Log.i(tag, addSum2(num).toString())两个参数后面的: Int则代表函数的返回值类型 kotlin里面Int是首字母大写与java中int类似但是java里面的int是基本类型而kotlin里面则是一个类。简单截个Int的代码 kotlin中还可以把上面的函数更简化 private fun addSum2(i1: Int, i2: Int 2): Int i1 i2可以看到当函数返回单个表达式的时候我们可以吧{}以及return等省略替换为等号后面就是指定的代码体。 参数默认值的写法有人会发现我的传个Int 和string,怎么报错了 那么像这种我们怎么传值呢kotlin当然考虑到了这个问题而且给出了新的用法键值对传值的方法 如图所示我们制定参数名称就可以是不是很方便 3集合 首先来张整体的框架图 可以看到顶层的四个基本接口分别是 IterableMutableIterableCollectionMutableCollection。 而下面六个在创建的时候又分为可变和不可变集合。 3.1 list 首先我们来看下list相关 构建list我们需要用到标准的库函数listOf()listOfNotNull()mutableListOf()arrayListOf(),其中前两个是不可变集合后两个是可变的。 val list1 listOf(1, 2, 3) val list2 mutableListOf(1, 2, 3)val list3 arrayListOf(2, 3, 4)val list4 listOfNotNull(1, 3, 4) 可以看到构建集合是非常简单的而且mutableListof构建的list2中有addremove等方法也就是可变集合。 至于listOfNotNull我们打印下看下输出结果 可以看到 listOfNotNull自动将null忽略可以看下源码 /*** Appends all elements that are not null to the given [destination].*/ public fun C : MutableCollectionin T, T : Any Arrayout T?.filterNotNullTo(destination: C): C {for (element in this) if (element ! null) destination.add(element)return destination }可以看到在底层如果参数为null就不会添加到destination中。 到这里构建list已经完结我们来接着看遍历list 这里我们先说下kotlin中的循环遍历分为两种for循环和while循环。 val list1 listOf(1, 1, 1, null)for (i in list1) {println(i)}var size list1.size - 1while (size 0) {println(list1[size])size--}另外除了这两种外我们还可以使用Lambdas表达式 list1.forEach { println( it) }这种是不是更方便 3.2 set set构建主要有setOf(),mutableSetOf(),hashSetOf(),linkedSetOf(); val set1 setOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 21) val set2 mutableSetOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 21)val set3 hashSetOf(1, 2, 3) val set4 linkedSetOfInt(1, 2, 3, 4, 5)其中只有setOf()是只读其余都是可读写的。 包含addaddallremove等方法。 另外从上图可以看出linkedSetOf()是不允许有null值的。 其次set中会自动去除相同元素这点跟java是一致的。 比如set1中虽然我们赋值了7个值但是set1实际为[1,2,3,21,null]. 3.3 Map MapK, out V 是以键值对的形式存在与listset一样构建时都分为可变和不可变集合。 其中mapof()为不可变 而linkedMapOf(), hashMapOf(),mutableMapOf()是可读写的。 val map1 mapOf(1 to map1-1, 2 to map1-2, null to null)val map2 linkedMapOf(1 to map2-1, 2 to map2-2, null to null)val map3 hashMapOf(1 to map3-1, 2 to map3-2, null to null)val map4 mutableMapOf(1 to map4-1, 2 to map4-2, null to null)println(map1--------------------------)map1.forEach { (key, value) - println($key \t $value) }println(map2--------------------------)map2[3] map2-3map2.forEach { (key, value) - println($key \t $value) }println(map3--------------------------)map3[3] map3-3map3.forEach { (key, value) - println($key \t $value) }println(map4--------------------------)map4[4] map4-3map4.forEach { (key, value) - println($key \t $value) }可以看到输出结果map的键值对是可以为null的。 4数组 kotlin中数组是Array代码很简单我们直接上代码 public class ArrayT {public inline constructor(size: Int, init: (Int) - T)public operator fun get(index: Int): Tpublic operator fun set(index: Int, value: T): Unitpublic val size: Intpublic operator fun iterator(): IteratorT }可以看到get和set方法以及遍历和长度。 首先我们根据constructor来创建数组 var array0 Array(3) { i - i 1 }其中3是指数组长度sizei-i1赋值。 另外一种则跟listset等一致使用arrayOf(); val array arrayOf(1, 2, 3)array[1] 100array.forEach { println(it) }5数组集合转换 5.1数组转集合 val array arrayOf(1, 2, 3)数组创建好了开始转这里用到的是toList方法。 /*** Returns a [List] containing all elements.*/ public fun T Arrayout T.toList(): ListT {return when (size) {0 - emptyList()1 - listOf(this[0])else - this.toMutableList()} }逻辑很简单如果size为0则返回空集合 如果为1则使用listof()创建不可变集合 否则使用toMutableList(); /*** Returns a [MutableList] filled with all elements of this array.*/ public fun T Arrayout T.toMutableList(): MutableListT {return ArrayList(this.asCollection()) }也很简单返回ArrayList。 当然Array转换的方法不止toList一种 感兴趣的朋友可以每个都熟悉下。 5.2集合转数组 这里拿toIntArray为例 /*** Returns an array of Int containing all of the elements of this collection.*/ public fun CollectionInt.toIntArray(): IntArray {val result IntArray(size)var index 0for (element in this)result[index] elementreturn result }代码很简单1构建Int数组 2for赋值 3返回array。 另一种则是 val listStr listOf(list, set, map) val arrayStr listStr.toTypedArray() arrayStr.forEach { println(it) }
http://www.w-s-a.com/news/614555/

相关文章:

  • 有没有免费注册域名的网站科技小制作 手工 简单
  • 网站支付端口win10优化大师怎么样
  • 怎么做云购网站吗网站流量监测
  • 网站被恶意刷流量可以翻外墙的浏览器
  • 网站做直链下载存储解决方案怎么把网站设置为主页面
  • 西安做网站招聘深圳网站见
  • 网站怎么做优化百度能搜索到wordpress 子分类
  • 六安网站建设培训制作网站需要多少时间
  • 电子商务专业网站建设什么软件可以做动画视频网站
  • wordpress 分享主题做网站优化有必要
  • ftp 网站管理电商网站设计图片
  • 惠州免费建站模板营销型旅游网站建设
  • 南宁cms建站wordpress 开启缩略图
  • 网站模板软件网站admin密码
  • 网站信息做参考文献射阳做企业网站多少钱
  • 网站外部优化的4大重点外贸站外推广
  • 宁波网站建设活动德州乐陵德州seo公司
  • 网站网址相对路径如何设置wordpress怎么加快网站打开速度
  • 有没有能帮人快速网站备案的机构网站建设与制作总结
  • 网站不用了怎么办苏州h5模板建站
  • 网站建设制作定制免费网络短剧
  • 建设部建造师强制注销网站h5响应式网站模板下载
  • 蛋糕网站内容规划建设网站需要多少钱济南兴田德润o厉害吗
  • 企业如何建设网站呢做网站的高手
  • 为什么打开网址都是站长工具开发一款网站需要多少钱
  • 做一个网站app需要多少钱分类信息网站建设计划
  • 怎样下载建设部网站建模培训
  • 北流网站建设制作旅游网站开发目的和目标
  • 网站公司怎么做的网站建设论文二稿
  • 网站建设服务商都有哪些html项目答辩