Kotlin高级——高阶函数
开始 高阶函数是将函数作为参数和返回值的函数,函数可以作为对象进行传递,函数对象的类型由参数和返回值表示,参数名可省略 (Int, Int) -> Int () -> Unit // 最简单的函数 // 一个函数对象也可以如下声明 val method: (Int) -> Int 函数类型支持可空类型,支持嵌套,支持类型别名 ((Int, Int) -> U...
开始 高阶函数是将函数作为参数和返回值的函数,函数可以作为对象进行传递,函数对象的类型由参数和返回值表示,参数名可省略 (Int, Int) -> Int () -> Unit // 最简单的函数 // 一个函数对象也可以如下声明 val method: (Int) -> Int 函数类型支持可空类型,支持嵌套,支持类型别名 ((Int, Int) -> U...
开始 kotlin函数使用fun关键字声明,参数必须有类型声明 fun function(arg: Int): Int { return arg * 2 } 函数作用域:顶层函数、成员函数、局部函数 kotlin支持顶层函数和顶层属性,也支持局部函数 默认参数和具名参数 函数参数可以使用默认参数,使用函数时可以使用具名参数指定参数值 fun add(a: Int, b...
开始 泛型类 class MyClass<T> { fun method(t: T): T } 泛型函数 fun <T> method(t: T): T { // statements } 泛型约束 用于约束泛型参数的上界,类似java的extends,默认的上界是Any? class Person<T : String>...
开始 委托模式是将一个对象的职责委托给其他对象完成,kotlin委托通过by关键字实现 类委托 将类中的方法委托到被委托对象实现 interface Method { fun method() } class MethodImpl : Method { override fun method() { // statement } } // 委...
开始 使用class关键字声明一个类,类中包含构造器、初始化块、方法、属性、内部类 class Obj // 创建一个空类 kotlin中没有new关键字,直接使用函数形式创建对象 var obj: Obj = Obj() 访问修饰符 kotlin的访问修饰符有public、protected、private、internal,可用于类、接口、属性、构造器、方法 默认权限都...
前言 自从学习完Kotlin,一直想把学习过程中的笔记总结起来发一下,现在总算有时间整理一下以前的笔记了,Kotlin现在可以算是我最喜欢的一门语言了,简洁又优雅,Kotlin现在也正在发展成一门多平台语言,希望Kotlin越来越好(早日取代Java这个老古董) 文章导航 基础篇...
开始 kotlin的主程序代码结构如下所示 package com.example.kotlin import ... fun main(args: Array<String>) { } kotlin代码文件后缀为.kt,kotlin文件不需要声明所处的包,没有指定包时,默认位于default包中 kotlin已经默认导入了一些包,可以直接使用其中的静态函数 ko...
前言 本文对C++ STL标准模板库中的常用容器、算法等作一个总结,同时记录一些学习的要点,便于以后快速查阅 容器 序列式容器:以线性排列存储某一类型的元素,元素都可序,但未必有序,不会自动按照值大小排序 关联式容器:容器中的元素结构为<K, V>键值对,通过键可访问到值,会进行自动按升序(或比较器)排序,一般结构为树或哈希表 vector vector,动...
前言 在考研时学会了KMP算法的手算,没有深究它的算法实现(主要是也不咋考),今天在LeetCode上刷到KMP的题目,在此记录一下代码实现的理解 相关LeetCode题目 28. 找出字符串中第一个匹配项的下标 - 力扣(LeetCode) 459. 重复的子字符串 - 力扣(LeetCode) KMP算法 KMP算法主要就是两步 使用模式串生成next数组(...
前言 最近学习了WinPcap,对教程中的Demo做一些函数说明补充 官方中文文档:WinPcap: WinPcap 中文技术文档 (redicecn.com) Demo1: 获取接口列表 pcap_findalldevs_ex函数:获取接口列表 pcap_freealldevs(pcap_if_t*):释放接口列表资源 int pcap_findalldevs_ex...