一、数组

  Kotlin 中的数组是带有类型参数的类,其元素类型被指定为相应的类型参数,使用 Array 类来表示, Array 类定义了 get 与 set 函数(按照运算符重载约定这会转变为 [ ] )以及 size 属性等

  创建数组的方法有以下几个:

  用 arrayOf 函数创建一个数组,包含的元素是指定为该函数的实参

  用 arrayOfNulls 创建一个给定大小的数组,包含的元素均为 null,只能用来创建包含元素类型可空的数组

  调用 Array 类的构造方法,传递数组的大小和一个 lambda 表达式,调用 lambda 表达式来创建每一个数组元素

  

  需要注意的是,数组类型的类型参数始终会变成对象类型,因此声明 Array Int 将是一个包含装箱类型(java.lang.Integer)的数组。如果想要创建没有装箱的基本数据类型的数组,必须使用一个基本数据类型数组的特殊类

  为了表示基本数据类型的数组,Kotlin 为每一种基本数据类型都提供了若干相应的类。例如,有 IntArray、ByteArray、BooleanArray 等类型,这些类型都会被编译成普通的 Java 基本数据类型数组,比如 int[]、byte[]、boolean[] 等,这些数组中的值存储时没有进行装箱,而是使用了可能的最高效的方式

  要创建一个基本数据类型的数组,有以下几种方式:

  向对应类型的类(如 IntArray)的构造函数传递数组大小,这将返回一个使用对应基本数据类型默认值初始化好的数组

  向对应类型的类(如 IntArray)的构造函数传递数组大小以及用来初始化每个元素的 lambda

  向工厂函数(如 charArrayOf)传递变长参数的值,从而得到指定元素值的数组

  

  二、字符串

  Kotlin 与 Java 一样用 String 类型来表示字符串,字符串是不可变的,可以使用索引运算符访问:[] 来访问包含的单个字符,也可以用 for 循环来迭代字符串,此外也可以用 + 来连接字符串

  

  如果你需要在原始字符串中表示字面值($)字符(它不支持反斜杠转义),可以用下列语法:

  

  

转载于:https://juejin.im/post/5ce2536b6fb9a07ede0b1545

Kotlin:数组、字符串模板相关推荐

  1. ES6(二)——字符串模板、标签模板字符串、函数的默认参数、剩余参数、数组对象的展开语法、数值的表示、Symbol

    一.字符串模板基本使用 在ES6之前,如果我们想要将字符串和一些动态的变量(标识符)拼接到一起,是非常麻烦和丑陋的(ugly). ES6允许我们使用字符串模板来嵌入JS的变量或者表达式来进行拼接: 首 ...

  2. Kotlin学习(二)—— 基本语法,函数,变量,字符串模板,条件表达式,null,类型检测,for,while,when,区间,集合

    一.基本语法 Kotlin的很多概念跟JAVA是有类似的,所以我应该不会像我的JAVA之旅一样那么的详细,但是不用担心,你会看的很明白的,我也是根据官方的文档来学习的 我们在IDEA中创建一个项目Ko ...

  3. ES6, Angular,React和ABAP中的String Template(字符串模板)

    String Template(字符串模板)在很多编程语言和框架中都支持,是一个很有用的特性.本文将Jerry工作中使用到的String Template的特性做一个总结. ES6 阮一峰老师有一个专 ...

  4. vue解构赋值_前端开发es6知识 模块化、解构赋值、字符串模板

    项目开发中一些常用的es6知识,主要是为以后分享小程序开发.node+koa项目开发以及vueSSR(vue服务端渲染)做个前置铺垫. 项目开发常用es6介绍1.块级作用域 let const 2.箭 ...

  5. let的解构赋值_前端开发es6知识 模块化、解构赋值、字符串模板

    项目开发中一些常用的es6知识,主要是为以后分享小程序开发.node+koa项目开发以及vueSSR(vue服务端渲染)做个前置铺垫. 项目开发常用es6介绍 1.块级作用域 let const 2. ...

  6. ES6—字符串模板引擎

    字符串模板引擎 ES5中的字符串缺乏多行字符串.字符串格式化.HTML转义等特性. 而ES6通过模板字面量的方式进行了填补,模板字面量试着跳出JS已有的字符串体系,通过一些全新的方法来 解决问题. 1 ...

  7. F - Anti-Rhyme Pairs(rmq算法模板)(后缀数组算法模板)

    点击打开链接 题目大意:通常押韵的两个词以相同的字符结尾.我们运用这个特性来规定反押韵的概念.反押韵是一对拥有近似开头的单词.一对单词的反押韵的复杂度被定义为两者都以之开头且最长的字符串S的长度.因此 ...

  8. JS总结:数组 字符串 对象

    JS总结:数组 字符串 对象 JS中的数据分类: 1)基本数据类型  数据存储在栈区 number, string, boolean, und, null 2)引用数据类型  数据存储在堆区(引用地址 ...

  9. vue 字符串模板 textarea中插入文字标签

    1.字符串模板以"["开始 以"]"结束 是一个元素 2.按下backspace退格键或者delete删除键删除字符时,如果删的是字符串模板,会删除整个字符串模 ...

  10. js中的标签函数(字符串模板)

    今天学到了一个新的知识点,标签函数 是将一个字符串模板作为实参传给一个函数 function f(a){console.log(a)} const b = 1 f`a${b}c` 这段代码的输出结果如 ...

最新文章

  1. mysql存储数据到cephfs_采用cephfs实现Elasticsearch数据持久化
  2. VS2008 解决方案配置器,即Debug,Release 模式选择
  3. 修改HBase的rowkey设计把应用的QPS从5W提升到50W
  4. LeetCode 122 买卖股票的最佳时机 II
  5. android恢复联系人,如何从Android手机恢复联系人[最佳方式]
  6. Django:数据进行md5加密
  7. scrapy分布式爬虫设置
  8. Two Sum(C、C++、Python)
  9. matlab 报错 索引超出数组元素的数目(1)。
  10. python构造icmp数据包_python – 在scapy中发送ICMP数据包并选择正确的接口
  11. 台式机黑苹果独显驱动
  12. Newton-Raphson法求解非线性方程复根
  13. 生成式模型和判别式模型的区别
  14. c# 判断时间是否在 某一时间段内
  15. 测试两台计算机网络情况,使用iperf测试两台电脑之间的网速
  16. android投影到创维电视,安卓手机投屏到电视的3个方法,赶紧收藏!
  17. 用微信公众号做淘宝优惠券查券和返利机器人的详细配置教程
  18. GitGitHub入门基础
  19. 老用户WAU以及老用户周活跃度
  20. ProGuard技术详解

热门文章

  1. 服务器模型---总结
  2. 实现远程访问局域网内的多台电脑
  3. 你会想待下去吗?世界上25个最惊险的屋顶
  4. 经验之谈—让你看明确block
  5. 练习-CSS3 多栏(Multi-column)
  6. 虚拟机上安装Linux时出现的问题及解决方法
  7. 搭建MIPS平台GDB调试环境
  8. android-getTextSize返回值是以像素(px)为单位的,setTextSize()以sp为单位
  9. 洛谷 P3745 [六省联考2017]期末考试
  10. 求$N^N$的首位数字