kotlin系列文章 --- 3.条件控制】的更多相关文章

if表达式 一个if语句包含一个布尔表达式和一条或多条语句 // 基础用法 var max = a if (a<b) max = b // 加上else var max: Int if(a>b){ max = a }else{ max = b } // 作为表达式 val max = if(a>b) a else b when表达式 类似其他语言的switch操作,如下 when(x){ 1 -> print("x == 1") 2 -> print(&q…
简介 Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,由Jetbrains设计开发,现在是Android官方开发语言,和Java具有互操作性,可以共存. 为什么选择kotlin? 简洁:大大减少样板代码的数量(个人认为与TypeScript十分相似,有点大一统的趋势..) 安全:避免空指针异常等整个类的错误. 互操作性:充分利用JVM.Android和浏览器的现有库 工具友好:可用任何 Java IDE 或者使用命令行构建. 第一个kotlin程序 最简版 package he…
函数 函数定义使用fun关键字,参数格式为:参数:类型,需要声明返回类型 fun sum(a:Int, b:Int): Int{ return a+b } 表达式作为函数体,返回值类型自动推断 fun sum(a:Int, b:Int) = a+b public fun sum(a:Int, b:Int): Int = a+b // public 方法则必须明确写出返回类型 fun printSum(a: Int, b: Int): Unit { println("sum of $a and $…
字符串模版: 小时候都有要求记日记的习惯,下面是一小学生记的日记: 很漂亮的流水账,那细分析一下这些文件其实大体都类似,只有几个不同点: 其实就是地点变了,那对于这种有规律的文字可以采用kotlin的字符串模拟来解决,类似于android中xml的文字替换符一样,具体如何做呢,下面开始: 接着实现生成函数: 运行看能否达到要求: 这是因为字符串模板是需要进行转义的,怎么转呢,如下: 再次编译运行: 嗯~~成功动态替换掉,这就是字符模板,接下来改一下地点: 运行: 那如何将其改为活的呢,继续使用字…
Kotlin Tutorials系列文章 想写一个有实用价值的Kotlin笔记, 让一线开发一看就懂, 看完就能上手. 当然官方文档更有参考价值了. 这个系列相对于官方文档的大而全来说, 最主要优势是: 自己写的比较亲切(??). 有一些自己的思路和二次梳理. 可以作为一个侧面参考. 这个flag立了很久, 真正写起来也断断续续写了很久. 目前也算是到了一个节点吧. 在掘金, 简书和公众号每篇都有发. Github这个repo可以作为最终备份吧. 以后说不定还会有补充内容. KotlinTuto…
条件控制与循环   if表达式 定义:if表达式是有值的,就是if或者else中最后一行语句返回的值. 例如:val isAdult = if (age > 18) 1 else 0 类型推断:由于if表达式是有值的,而if和else子句的值类型可能不同,此时if表达式是什么类型呢?Scala会自动取两个类型的公共父类型. 如果if后没有跟else,则默认else的值是Unit,也用()表示,类似java中的void或者null. 写多行if语句:可以使用{}的方式,但推荐使用:paste和ct…
#!/usr/bin/python #-*-coding:gbk-*-#Python3 条件控制&循环语句import randomage = int(input("请输入你的年龄:"))#在 while … else 在条件语句为 false 时执行 else 的语句块:while age < 12:    print("你还是一个儿童!")    age += 1else:    print("你不再是小孩子了!") '''wh…
这篇文章理论的知识比较多一些,都是个人观点,描述有失妥当的地方希望读者指出. [微信小程序开发•系列文章一]入门 [微信小程序开发•系列文章二]视图层 [微信小程序开发•系列文章三]数据层 [微信小程序开发•系列文章四]模块化 [微信小程序开发•系列文章五]主界面 [微信小程序开发•系列文章六]生命周期和路由 整个微信小程序从打开到关闭,整个过程可以分为很多阶段或者说状态,这一整段的过程,我们称之为小程序的生命周期.而周期中的每种不同的状态,到另一个状态的过度和转化,是需要一个触发机制的,这种机…
1 什么是设计模式 设计模式是对在软件设计过程中重复出现的问题提出了一种比较好的解决方案.正如一位专家所说:设计模式是对程序设计人员经常遇到的设计问题的可再现的解决方案(The Smalltalk Companion).GOF设计模式通常被认为是其他设计模式的基础,随着业务复杂度的增大,会不断涌现新的设计模式,而这些新的设计模式一般会以GOF模式理论为参照. 2 为什么要学习设计模式 从个人职业规划来考虑.一位软件开发工程师随着编码量的增加,开发经验的增加,软件理论理解的加深,会不由自主地想一些…
1.本文速览 本篇文章是我为接下来的 MyBatis 源码分析系列文章写的一个导读文章.本篇文章从 MyBatis 是什么(what),为什么要使用(why),以及如何使用(how)等三个角度进行了说明和演示.由于文章的篇幅比较大,这里特地拿出一章用于介绍本文的结构和内容.那下面我们来看一下本文的章节安排: 如上图,本文的大部分篇幅主要集中在了第3章和第4章.第3章演示了几种持久层技术的用法,并在此基础上,分析了各种技术的使用场景.通过分析 MyBatis 的使用场景,说明了为什么要使用 MyB…
NHibernate之旅系列文章导航 宣传语 NHibernate.NHibernate教程.NHibernate入门.NHibernate下载.NHibernate教程中文版.NHibernate实例.NHibernate2.0.NHibernate2.0教程.NHibernate之旅.NHibernate工具 我的NHibernate全部文章在http://www.cnblogs.com/lyj/category/129155.html 导游 NHibernate是把Java的Hiberna…
Kotlin系列之序列(Sequences)源码完全解析 2018年06月05日 22:04:50 mikyou 阅读数:179 标签: Kotlin序列(sequence)源码解析Androidjava 更多 个人分类: Kotlin   版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u013064109/article/details/80588034 简述: 好久没有发布原创文章,一如既往,今天开始Kotlin浅谈系列的第十讲,一起来探索…
学习 openstack 的系列文章 - Nova Nova 基本概念 Nova 架构 openstack Log Nova 组件介绍 Nova 操作介绍 1. Nova 基本概念 Nova 是 openstack 最核心的服务,负责管理和维护云环境的计算资源,虚拟机的生命周期管理就是通过 Nova 来实现的 . 2. Nova 架构 2.1 Nova 基本组件 如上图所示,Nova 由多个组件构成,这些组件以子服务的形式运行 . 举例,通过  systemctl status openstac…
我可以和面试官多聊几句吗?只是想... MySQL优化篇系列文章(基于MySQL8.0测试验证),上部分:优化SQL语句.数据库对象,MyISAM表锁和InnoDB锁问题. 面试官:咦,小伙子,又来啦. 我:面试官,您好.一面确实收获不少,二面想获取更多的经验. 面试官:不错,不错,不错,年纪轻轻,有我当年一半的风范,挺有觉悟.接着聊MySQL锁问题. 我:好呀,这次我准备了MyISAM和InnoDB锁一些总结,希望您多多指教. 面试官:那,让我们进入今天的话题,一起讨论MySQL锁问题. 我:…
ABP相关岗位招聘:给热爱.NET新技术和ABP框架的朋友带来一个高薪的工作机会 ABP交流会录像视频:ABP架构设计交流群-7月18日上海线下交流会的内容分享(有高清录像视频的链接) 代码自动生成:分享一个与ABP配套使用的代码生成器源码 ABP系列文章总目录: 1.ABP总体介绍  2.ASP.NET Boilerplate入门 3.ABP分层架构 4.ABP模块系统 5.ABP启动配置 6.ABP依赖注入 7.ABP Session管理8.ABP日志管理9.ABP设置管理10.ABP领域层…
统计角度窥视模型概念 作者:白宁超 2016年7月18日17:18:43 摘要:写本文的初衷源于基于HMM模型序列标注的一个实验,实验完成之后,迫切想知道采用的序列标注模型的好坏,有哪些指标可以度量.于是,就产生了对这一专题进度学习总结,这样也便于其他人参考,节约大家的时间.本文依旧旨在简明扼要梳理出模型评估核心指标,重点达到实用.本文布局如下:第一章采用统计学习角度介绍什么是学习模型以及如何选择,因为现今的自然语言处理方面大都采用概率统计完成的,事实证明这也比规则的方法好.第二章采用基于数据挖…
这段时间闲来无事,就在总结以前的项目经验,然后写成博客的形式以进行记录.本文就对<IT软件人员学习系列文章>做个开篇吧. 对于IT软件的开发来说,无外乎B/S.C/S和Android.iOS(后两项也是C/S).在B/S领域,无外乎PHP.JAVA和ASP.NET这几大阵营.而在C/S领域,JAVA的开发比较复杂,需要编写一些重复的和底层的代码,相比C#的可视化和相似的语法,还是微软的开发工具和语言比较容易上手. 但是,我们今天讲的不是代码,而是整个软件流程,这个属于软件工程的范畴.我们知道,…
[源码下载] 不可或缺 Windows Native 系列文章索引 作者:webabcd 1.不可或缺 Windows Native (1) - C 语言: hello c 介绍不可或缺 Windows Native 之 C 语言 在 Windows Store Apps 中调用 C/C++ hello c 2.不可或缺 Windows Native (2) - C 语言: 常量,变量,基本数据类型 介绍不可或缺 Windows Native 之 C 语言 常量 变量 基本数据类型 3.不可或缺…
原文地址:http://www.blogjava.net/johnnylzb/archive/2010/05/27/321968.html 上一篇文章作为一个引子,说明了领域驱动设计的优势,从本篇文章开始,笔者将会结合自己的实际经验,谈及领域驱动设计的应用.本篇文章主要讨论一下我们经常会用到的一些对象:VO.DTO.DO和PO. 由于不同的项目和开发人员有不同的命名习惯,这里我首先对上述的概念进行一个简单描述,名字只是个标识,我们重点关注其概念: 概念: VO(View Object):视图对象…
[源码下载][重新想象 Windows 8.1 Store Apps 系列文章] 重新想象 Windows 8 Store Apps 系列文章索引 作者:webabcd 1.重新想象 Windows 8 Store Apps (1) - 控件之文本控件: TextBlock, TextBox, PasswordBox, RichEditBox, RichTextBlock, RichTextBlockOverflow 介绍 重新想象 Windows 8 Store Apps 之 控件 TextB…
[源码下载] [重新想象 Windows 8 Store Apps 系列文章] 重新想象 Windows 8.1 Store Apps 系列文章索引 作者:webabcd 1.重新想象 Windows 8.1 Store Apps (72) - 新增控件: AppBar, CommandBar 介绍重新想象 Windows 8.1 Store Apps 之新增控件 AppBar - 应用程序栏控件(新增了 AppBarButton, AppBarToggleButton, AppBarSepar…
本篇文章主要讨论一下我们经常会用到的一些对象:VO.DTO.DO和PO. 由于不同的项目和开发人员有不同的命名习惯,这里我首先对上述的概念进行一个简单描述,名字只是个标识,我们重点关注其概念: 概念: VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来. DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高…
作为一个程序猿,只知道怎么用是远远不够的. 起码,你须要知道为什么能够这么用.即我们所谓底层的东西. 那究竟什么是底层呢?我认为这不能一概而论.以我如今的知识水平而言:对于Web开发人员,TCP/IP.HTTP等等协议可能就是底层:对于C.C++程序猿.内存.指针等等可能就是底层的东西.那对于Java开发人员,你的Java代码执行所在的JVM可能就是你所须要去了解.理解的东西. 我会在接下来的一段时间,和读者您一起去学习JVM,全部内容均參考自<深入理解Java虚拟机:JVM高级特性与最佳实践>…
在二十多年的悠久历史里,Lotus Notes发展出一整套独特的概念.技术和思维.由于它早期惊人的领先时代和后续发展中同样惊人的忠于传统,这位软件领域的寿星在如今发展更新速度远超往日和技术愈趋公开互通的时代,尤显与众不同. 在这里你可以进行速度上无与伦比的快速开发,有图形用户界面和远程数据库,能自动更新的,多用户的,有高度安全性的,权限严密控制的,可以离线使用和自动同步数据的客户端服务器模式的应用程序. 但是你却不需要掌握数据结构.编译连接.关系型数据库设计和面向对象的思想,不需要了解控件.SQ…
原文:[强烈强烈推荐]<ORACLE PL/SQL编程详解>全原创(共八篇)--系列文章导航 <ORACLE PL/SQL编程详解> 系列文章目录导航 ——通过知识共享树立个人品牌. 本是成书的,但后来做其他事了,就无偿的贡献出来,被读者夸其目前为止最“实在.经典”的写ORACLE PL/SQL编程的文章-! 觉得对你有帮助,请留言与猛点推荐,谢谢. [推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下) 本篇主要内容如下:第一章 PL/S…
在这章中,我们将学习如何创建一个管理图片的新实体,如何使用HTML表单上传图片文件,并使用多对多关系将它们和产品关联起来,如何将图片存储在文件系统中.在这章中,我们还会学习更加复杂的异常处理,如何向模型添加自定义错误,然后向用户显示错误信息.在本章使用的产品图片可以在Apress站点中的第6章的代码中获得. 注意:如果你想按照本章的代码编写示例,你必须完成第五章或者直接从www.apress.com下载第五章的源代码. 6.1 创建一个用于存储图片名称的实体 对于本项目,我们打算使用文件系统将图…
OKR与敏捷开发的原理有着相似之处,但已经使用敏捷的团队再用OKR感觉会显得多余.这种误解的根源就在于对这两种模式不够了解,运用得当的情况下,OKR和敏捷可以形成强强联合的效果,他们可以创造出以价值为驱动的团队,改变团队的工作方式. 本文最后一部分分析了OKR的正确使用方法,以及如何赋予团队更多自主权. 回顾第一部分请点这里:系列文章|OKR与敏捷(一):瀑布式目标与敏捷的冲突回顾第二部分请点这里:系列文章|OKR与敏捷(二):实现全栈敏捷 使用OKR的正确方式 与其他工具一样,OKR也可能会被…
OKR与敏捷开发的原理有着相似之处,但已经使用敏捷的团队再用OKR感觉会显得多余.这种误解的根源就在于对这两种模式不够了解,运用得当的情况下,OKR和敏捷可以形成强强联合的效果,他们可以创造出以价值为驱动的团队,改变团队的工作方式. 本文是OKR与敏捷系列文章的第二部分. 回顾第一部分请点这里:系列文章|OKR与敏捷(一):瀑布式目标与敏捷的冲突 全栈敏捷 想要实现业务的敏捷性,公司需要确保各层级的敏捷性.以此来替换公司传统组织架构的各个层级: 在全栈敏捷中,组织各个层级的架构转变为: 文化以激…
本篇文章主要讨论一下我们经常会用到的一些对象:VO.DTO.DO和PO. 由于不同的项目和开发人员有不同的命名习惯,这里我首先对上述的概念进行一个简单描述,名字只是个标识,我们重点关注其概念: 概念: VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来. DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高…
设计模式系列文章导航  C#设计模式(1)——单例模式(SingletonPattern) C#设计模式(2)——简单工厂模式(SimpleFactory)    C#设计模式(3)——工厂方法模式(FactoryMethod) C#设计模式(4)——抽象工厂模式(AbstractFactory) C#设计模式(5)——建造者模式(Builder Pattern) C#设计模式(6)——原型模式(Prototype Pattern) C#设计模式(7)——适配器模式(Adapter Patter…