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

网站建立公司重庆造价工程信息网官网

网站建立公司,重庆造价工程信息网官网,中国设计网站推荐,网店开店流程kotlin之::函数调用、plus#xff08;增加元素#xff09;、copyOf#xff08;复制数组#xff09;、reverse#xff08;翻转数组#xff09;、forEach#xff08;遍历数组#xff09;、filter#xff08;过滤数组#xff09;、map函数操作及扩展、reduce函数、fold函…kotlin之::函数调用、plus增加元素、copyOf复制数组、reverse翻转数组、forEach遍历数组、filter过滤数组、map函数操作及扩展、reduce函数、fold函数、filter、filterIndexed、takeWhile、infix关键字等的解释和使用示例。 说明已经在代码里面了请看代码。如果有任何疑问或者建议可以留言。谢谢。 函数的其它用法::操作函数的其它方式。 class ComposeCall {fun sayHi() {System.out.println(ComposeCall,sayHi:Hi!)}fun sayHiToAny(any: Any) {System.out.println(---ComposeCall,sayHiToAny:Hi, any)} } 复制代码验证 var hi1 ComposeCall::sayHiToAny//返回的是方法本身而不是返回值println(hil: hi1)//输出 // hil:fun com.tanksu.ndkdemo3.feature.cls.ComposeCall.sayHiToAny(kotlin.Any): kotlin.Unitvar hi2 ComposeCall::sayHivar com ComposeCall()hi2(com)//必须要传入类的实例才能够进行调用相当于java的invoke一样hi1(com, jack)//传入类实例和参数相当于java的invoke方法去调用hi2以及入参//输出 // ComposeCall,sayHi:Hi! // ---ComposeCall,sayHiToAny:Hi,jack 复制代码数组操作之plus增加元素、copyOf复制数组、reverse翻转数组、forEach遍历数组、filter过滤数组等方法对数组的操作。 val arr arrayOf(Apple, Banana, , Orange)arr.forEach(::println)//空对象也输出了println(--------------------------)var narr arr.plus(juice)//这里必须用另外一个对象来接收原来的对象不会改变var newArr narr.copyOf()//复制一份新的arrnewArr.forEach(::println)println(--------------------------)arr.reverse()//将数组翻转过来arr.forEach(::println)println(--------------------------)println(arr.filter(String::isNotEmpty))//filter将会过滤不为空的对象 // Apple // Banana // // Orange // -------------------------- // Apple // Banana // // Orange // juice // -------------------------- // Orange // // Banana // Apple // -------------------------- // [Orange, Banana, Apple] 复制代码list的map函数操作及扩展对数组进行自定义操作。 val raw listOf(1, 2, 3, 4, 5, 5)val newList ArrayListInt()raw.forEach {newList.add(it 1)//it替代raw中每一个元素这里一次加入到newList中}println(newList)println(raw.map { it * 10 })//map先遍历raw的元素然后再执行打印动作println(raw.map(Int::toDouble))//map先将每个元素都变成double类型然后再执行打印动作 // [2, 3, 4, 5, 6, 6] // [10, 20, 30, 40, 50, 50] // [1.0, 2.0, 3.0, 4.0, 5.0, 5.0] 复制代码数组的reduce函数遍历数组元素并自定义操作。和fold类似。 val list listOf(2, 3, 5)println(list.reduce { ret, i - ret i })//第一个参数ret是结果第二个参数是代表要执行的操作// 比如我这里是数组每个元素相乘最后吧结果输出给ret。。。。下面我将进行加法操作如下//输出30//加法操作println(list.reduce { ret, i - ret i })//输出10 复制代码数组的fold函数用法对数组进行进行自定义操作。和reduce类似。 val list listOf(2, 3, 5)println(--------------------------)println(raw.fold(10) { ret, i - ret i })//这里给了一个初始值10然后fold操作和reduce操作类似println(raw.fold(StringBuilder(jack say:)) { ret, i - ret.append(i) })//这里也给了一个初始值StringBuilder// 在第二个参数里面才能够进行append操作//输出结果 // -------------------------- // 20 // jack say:235 复制代码数组方法之filter、filterIndexed、takeWhile等对数组元素操作。 val list listOf(4, 3, 2, 5, 6, 8, 9)println(list.filter { it 3 || it 6 })//过滤等于3或者等于6的元素集合结果以新的集合返回println(list.filterIndexed { index, i - index i })//过滤等于第一个参数的元素集合结果以新的集合返回println(list.takeWhile { it in 0..5 })//过滤在0-5之间的元素结果以新的集合返回println(list.takeWhile { it in 3..5 })//过滤在3-5之间的元素结果以新的集合返回。这里加入判断到其中一个元素不满足条件就会终止执行下面的元素判断//输出结果 // [3, 6] // [2] // [4, 3, 2, 5] // [4, 3] 复制代码infix的关键字解释函数的另外一种调用手法。骚操作 class TestInfix(var age: Int) {infix fun dog(weight: Int) {println(TestInfix, dog $age and $weight)}infix fun cat(weight: String) {println(TestInfix, dog $age and $weight)}}infix fun TestInfix.rat(mounth: Int) {//这是println(TestInfix rat $age and $mounth)}var i TestInfix(3)i dog 80i rat 1i cat jack // TestInfix, dog 3 and 80 // TestInfix rat 3 and 1 // TestInfix, dog 3 and jack 复制代码非空判断 用 ? 调用是安全调用,在被调用的量为空时也返回null 用 !! 调用的是假定非空调用,在被调用的量为空时会发起空指针异常(NPE) 或者直接用条件判断(if-else)来事先决定好空量的处理方案 复制代码
http://www.yutouwan.com/news/167400/

相关文章:

  • 重庆城乡建设部网站首页公司网站公众号维护怎么做
  • 更改host文件把淘宝指向自己做的钓鱼网站大学生怎么做网站支付模块
  • 重庆网站建设推荐wordpress程序员
  • 网站套模板什么意思网站建设与栏目设置
  • 重庆环保公司网站建设wordpress 餐饮 主题
  • 网站开发 怎样做费用结算本地服务类网站成本
  • 哪个网站查企业信息免费学校vi设计案例
  • 网站建设方案可行性广州品牌营销策划公司排名
  • 做商城网站如何寻找货源原创网站模版
  • 南宁市规划建设局 网站网站编写费用
  • diy电子商城网站北京最新消息今天新增病例
  • 产品经理网站开发需求合成版本传奇手游
  • 企业公众号以及网站建设学院网站建设成果
  • 搭建网站是什么工作Wordpress调用一组文章
  • app网站多少钱农村做网站开发
  • 建设银行车主卡网上交罚款网站澎湃动力网站建设公司
  • 网站建设好评公司全国建设项目竣工验收公示网站
  • 八宿县网站seo优化排名下载软件应用
  • 太原市住房和城乡建设局的网站首页中国互联网协会调解中心
  • 建设网站需要准备哪些内容百度风云榜游戏
  • 做ic芯片的要去哪个网站做网站用需要几个软件
  • 哪里有做空包网站的峰峰网站建设
  • 大型网站建设托管服务建设公司哪家好
  • 网站建设要域名和什么网站策划书预期风险
  • 网站开发的平台网站建设费的会计分录
  • 东莞网站建设(信科分公司)wordpress主题首页显示不全
  • 网站建设法律可行性网页链接中的文件路径分为
  • 在小说网站做责编创建wordpress主题
  • sqlite3做网站数据库东莞网站建设团队全网天下
  • 网页新建站点食品电子商务网站建设规划书