Kotlin设计模式实现之装饰者模式(Decorator)

Kotlin设计模式实现之装饰者模式(Decorator)

前言       之前用kotlin实现了策略模式,文中写到要多写几篇文章来加深以下对设计模式的理解。那么今天要写的看题目应该就知道了:装饰者模式(也叫装饰模式)。下面是装饰者模式的定义:装饰者模式(Decorator):在不改变对象自身的基础上,动态地给一个对象添加一...

Kotlin设计模式实现之策略模式

Kotlin设计模式实现之策略模式

看到题目就知道第一篇写的是策略模式了,下面来详细看看:正文首先来说一下需求吧:需要来模拟鸭子,有各种的鸭子,可以游泳,可以叫,有绿颜色的、还有黄颜色的等等。很简单对吧,再加上kotlin的优秀语法,就更简单了:abstract class Ducks{ ...

安卓一行代码实现避免按钮重复点击(AOP)java和kotlin都能使用

之前处理按钮重复点击基本由两种思路:    1、第一种是点击之后禁止点击,然后等操作执行完毕之后再放开点击。    2、第二种是重写OnclickListenrer方法,在里面进行一些操作。但是上面两种方式都对代码由侵入性。AOP很好的解决了这个问题。我已经写...

数据结构 | 二分搜索树及它的各种操作(kotlin实现)

数据结构 | 二分搜索树及它的各种操作(kotlin实现)

什么是二叉树?和链表一样,同样也是动态数据结构二叉树具有唯一的根节点class Node<E> { var e: E? = null var left: Node<E>? = null var right: Node<E>? = null }每个节点最多有两个节点...

重学数据结构-使用Kotlin实现链表及其他扩展

重学数据结构-使用Kotlin实现链表及其他扩展

What is a linked list?🤔不同于栈与队列及动态数组,它是真正意义上最简单的动态数据结构优点:真正的动态,不需要处理固定容量的问题缺点:丧失了随机访问的能力数据存储在 “节点”(Node)中class Node(val e: E, val next: Node)学习...

数据结构 | 使用Kotlin实现栈与队列

数据结构 | 使用Kotlin实现栈与队列

栈(Stack)Last In First Out(LIFO) 后进先出栈也是一种线性数据结构代码实现栈考虑到需要扩容,所以我们使用ArrayList最为底层的动态数组支持。interface Stack<E> { //获取栈的大小 fun getSize(): Int //栈是否为nu...

Kotlin | 实现数据类(data)深拷贝

Kotlin | 实现数据类(data)深拷贝

在Kotlin中,data数据类默认的copy方法实现的是浅拷贝,但我们有时候需要实现深拷贝。 在kotlin中,实现就比较容易了。那么什么是深拷贝与浅拷贝呢?​简单理解,浅拷贝指的是如果要拷贝A对象,则会重新创建一个B对象,并将其内部变量全部赋值给B对象,所以我们称之为浅拷贝。深拷贝...

用kotlin来实现一个打方块的小游戏

用kotlin来实现一个打方块的小游戏

用kotlin来实现一个打方块的小游戏前言今天来做个打方块的小游戏,继续熟悉kotlin的语法,看下要实现的效果图看着效果图好像挺难的样子,但理清思绪后,你会发现特别的简单,还是那句话,学习方法最重要思路构造界面 :这个部分比较简单,根据控件的比例来画小球、挡板和击打的方块,所有击打的方块存储在一个...

用kotlin来实现一个饼图

用kotlin来实现一个饼图

前言代码不难,所以打算用kotlin来实现,增加熟练度先看看做的是什么看完图,我们来整理下思路饼图居中,每块区域都是一个扇形,需要canvas.drawArc根据角度来绘制需要path.arcTo定位到扇形弧度的一半来绘制折线的起点通过canvas.drawPath绘制折线,折线的长度根据饼图大小来...

OpenCV + Kotlin 实现 USB 摄像头(相机)实时画面、拍照

init { System.load("${FileUtil.loadPath}WImagesProcess.dll") } /** * 算法的版本号 */ external fun getVersion():String /** * 获取 OpenCV 对应相机的 index id * @para...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

社区圈子

微服务
微服务
构建可靠、高效、易扩展的技术基石
23215+人已加入
加入