kotlin学习(二)
来源:互联网 发布:matlab矩阵迭代算法 编辑:程序博客网 时间:2024/05/16 00:43
在这个学习阶段主要是面向对象的基础,写了一个日常生活中洗衣机洗衣服的逻辑,当然还不完善,还需要改进,直接通过代码来看吧
/** 面向对象(一)* 利用基本数据类型来描述复杂的数据类型** 描述一个矩形:长,宽*** *///描述矩形,包含长和宽两个属性class Rect(var width : Int,var height : Int)//描述一个美女class BeautifulGirl(var name : String,var face : String,var age : Int)fun main(args: Array<String>) { //定义了一个矩形 var rect1 : Rect = Rect(10,10); println("矩形的高度:${rect1.height}"); println("矩形的宽度:${rect1.width}"); var beautifulGirl : BeautifulGirl = BeautifulGirl("美女","漂亮",20); println("美女长的${beautifulGirl.face},她叫${beautifulGirl.name},今年${beautifulGirl.age}岁") var girl :Girl = Girl("jj",22,"漂亮","不好听"); girl.smile() girl.song() //洗衣机 var laundry : Laundry = Laundry() laundry.open() laundry.start()}/** 面向对象(二)* 对象有属性* 对象有行为* kotlin的静态属性和动态行为* *///更加真实的描述一个美女class Girl(var name :String,var age : Int,var face : String,var song : String){ //美女笑了一下 fun smile(){ println("美女笑了一下,露出了两个酒窝") } //美女唱歌 fun song(){ println("我虽然长的${face},但是唱歌${song}") }}/** 一台可以使用的洗衣机* 根据洗衣机的工作原理* (1)用户打开洗衣机开关* (2)开始设定相关属性,洗衣的类型:普通,漂洗,干洗等,默认为普通,水的多少:默认为桶容量的1/2,时间,默认为30分钟* (3)根据设置的参数开始洗衣服* (4)洗衣服完成,提醒用户* *///定义桶的容量val CAPACITY : Double= 100.0;class Laundry( //属性 var type : Int = 1,//洗衣类型 var water : Double = (CAPACITY/2),//默认为水桶容量的一般 var time : Int = 30//默认为30分钟){ //打开洗衣机 fun open() : Unit{ //让用户输入相关信息 println("请输入洗衣类型:1.普通洗衣,2.漂洗,3.干洗"); try { type = readLine()?.toInt() ?: 1;//如果用户输入了,就使用用户输入的,否则就使用普通模式 }catch (e : Exception){ type = 1; } println("请输入水量:\n \t 1.1/2水桶容量,2.2/3水桶容量,3.3/4水桶容量") var waterNum: Int; try { waterNum = readLine()?.toInt() ?: 1; }catch (e : Exception){ waterNum = 1; } when(waterNum){ 1 -> water = CAPACITY * (1/2); 2 -> water = CAPACITY * (2/3) 3 -> water = CAPACITY * (3/4) else -> water = CAPACITY * (1/2); } println("请输入洗衣时长:1.30min,2.40min,3.50min,4.60min"); var timeNum : Int; try { timeNum = readLine()?.toInt() ?: 1; }catch (e : Exception){ timeNum = 1; } when(timeNum){ 1 -> time = 30; 2 -> time = 40; 3 -> time = 50; 4 -> time = 60; else -> time = 30; } } //开始洗衣服 fun start(){ var currentTime : Int= 0; while (currentTime < time){ println("正在洗衣服"); currentTime ++; } end() } //洗衣服完成,提醒用户三次 fun end(){ var remind : Int = 0; while (remind < 3){ println("洗衣服完成,请取走衣服"); remind ++; } }}
阅读全文
0 0
- kotlin学习(二)
- Kotlin学习(二)
- Kotlin学习(二)Hello Kotlin
- kotlin学习笔记(二)
- kotlin学习笔记(二)
- Kotlin学习笔记(二)
- kotlin学习笔记(二)
- Kotlin学习笔记(二)---从零学习Kotlin
- Kotlin学习笔记(二):Kotlin与Java对比
- Kotlin学习(二)基本语法
- Kotlin学习笔记(二)循环,跳转
- Kotlin学习笔记(二)基本数据类型
- kotlin学习-基本语法(二)
- 一步一步学习Kotlin(二)
- 学习一下Kotlin(二)
- kotlin语法学习二
- Kotlin学习教程(二)
- Kotlin学习过程 二 Kotlin基础语法
- ContainerAllocator详解
- 数据结构--计算机底层--操纵数据
- 添加球员
- 17~18上学期期中考总结
- 一对一单向关联映射
- kotlin学习(二)
- Spring Data for JPA核心技术讲解
- 运维之监控与安全篇------4. Cacti监控
- vue的v_show
- listView入门
- Job中的Task是如何调度的
- 【ACM中常见错误对应表】
- Docker for Windows安装教程
- DFS寻找路径~