三、代数数据类型和模式匹配
其实都是些设计思想,我们在开发中都用到了,需要在开发中不断积累领悟。
1、代数数据类型概念理解
代数就是能代表数字的字母或符号
这种用代数或者数字转换成的类型,以及通过这些类型所产生的的新的类型就叫做代数数据类型,有点绕口哈哈。
其实我们用的枚举就是代数数据类型的一种,后边我们会慢慢体会到它带来的好处。
2、何为模式?模式即为表达式,常见模式有常量模式、类型模式、逻辑表达式模式
常量模式就是比较两个常量是否相等,比如if else 、switch case
类型模式类似于java的 instanceOf circle instanceOf Shape kotlin的 is Shape 类型检查
逻辑表达式模式可以理解为 if else 、switch case实现起来比较麻烦(比如在if条件里做比较多的逻辑判断等),用逻辑表达式模式实现起来比较简洁的模式,
3、何为模式匹配?模式匹配中的模式即为表达式,匹配的也是表达式,模式匹配的核心就是解构(反向构造表达式),如下结构:
when(expre){
expre1->{}
expre2->