2018年12月19日

Java 8 Lambda 表达式

摘要: Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中) 使用 Lambda 表达式可以使代码变的更加简洁紧凑 以下是lambda表达式的重要特征: 可选类型声明:不需要声明参数类型,编译器可以统一识别参数值。 可选的参数圆括号:一个参数无需定义圆括号,但多个参数需要定义圆括号。 可选 阅读全文

posted @ 2018-12-19 17:47 LoaderMan 阅读(257) 评论(0) 推荐(0) 编辑

利用socket实现聊天-Android端核心代码

摘要: 实体类与服务端报错一致,包括包名 数据库设计 传输对象 工具类 客户端实现 消息服务 消息广播 阅读全文

posted @ 2018-12-19 17:35 LoaderMan 阅读(426) 评论(0) 推荐(0) 编辑

利用sorket实现聊天功能-服务端实现

摘要: 工具包 传输对象建立 实体类 数据库建立 服务器实现 完成 阅读全文

posted @ 2018-12-19 17:15 LoaderMan 阅读(656) 评论(0) 推荐(0) 编辑

kotlin 之内联函数

摘要: 在lambda表达式内联函数,需要在定义函数使用inline关键字 未使用inline关键字 使用inline 关键字 输出一样 但注意的是,要内联的函数带的lambda不宜过大,否则会造成生产class文件过大 内联部分lambda表达式 关键字noinline不会内联调用函数 阅读全文

posted @ 2018-12-19 17:00 LoaderMan 阅读(1066) 评论(0) 推荐(0) 编辑

kotlin之函数的范围和泛型函数

摘要: kotlin 中函数可以定义为局部函数,成员函数以及扩展函数 局部函数:就是嵌套在函数内的函数 成员函数就是定义在类或者对象之内的函数 泛型函数就是函数可以带有泛型参数,可通过尖括号来指定 阅读全文

posted @ 2018-12-19 16:22 LoaderMan 阅读(766) 评论(0) 推荐(0) 编辑

kotlin函数的参数和返回值

摘要: 如果函数为多行语句,那么就必须指定返回值类型,除非这个函数打算返回Unit(不返回任何值) 阅读全文

posted @ 2018-12-19 16:17 LoaderMan 阅读(7306) 评论(0) 推荐(0) 编辑

kotlin 之单表达式函数

摘要: 如果函数体只有一条语句,而且是return语句,那么可以省略大括号以及return关键字, 阅读全文

posted @ 2018-12-19 16:11 LoaderMan 阅读(509) 评论(0) 推荐(0) 编辑

kotlin使用中辍标记法调用函数

摘要: 所谓中辍表达式:就是将函数名称放在两个操作数中间,这二个操作数,左侧是包含函数的对象或者值,右侧是函数的参数值,并不是所有的函数都支持中辍表达式,必须满足以下条件: 成员函数或者扩展函数 只有一个函数 使用infix关键字声明函数 阅读全文

posted @ 2018-12-19 16:07 LoaderMan 阅读(406) 评论(0) 推荐(0) 编辑

kotlin之函数的基本用法

摘要: kotlin函数必须适应fun关键字开头,后面紧跟着函数名,以及一对小括号,小括号中是函数的参数列表,如果函数有返回值,则在小括号后面加冒号: 冒号后面是函数返回值类型 如果foo函数在demo类中,调用如下 阅读全文

posted @ 2018-12-19 15:53 LoaderMan 阅读(483) 评论(0) 推荐(0) 编辑

kotlin之lambda表达式和匿名函数

摘要: lambda表达式,称为匿名函数,是一种函数字面值,也就是没有声明的函数,但可以作为表达式传递出去. 函数类型: 对于接受另一个函数的作为自己的参数,必须针对这个参数指定一个函数的类型如 参数less的类型(T,T)->Boolean ,也就是说,它是一个函数,接受二个T类型的参数,并且返回一个Bo 阅读全文

posted @ 2018-12-19 15:45 LoaderMan 阅读(2945) 评论(0) 推荐(0) 编辑

kotlin之高阶函数

摘要: 高阶函数是一种特殊的函数,它接受函数作为参数,或者返回一个函数 输出: 阅读全文

posted @ 2018-12-19 15:25 LoaderMan 阅读(636) 评论(0) 推荐(0) 编辑

kotlin之MutableMap委托

摘要: MutableMap委托变化是双向的,是一种可读写委托 阅读全文

posted @ 2018-12-19 15:11 LoaderMan 阅读(1436) 评论(0) 推荐(0) 编辑

kotlin之map委托

摘要: 使用场景:将map中key-value映射到对象的属性中,这通常在解析json 数据时用到 阅读全文

posted @ 2018-12-19 15:07 LoaderMan 阅读(897) 评论(0) 推荐(0) 编辑

kotlin标准委托之阻止属性的赋值操作

摘要: 输出: 总结:使用vetoable函数,响应器会返回一个布尔值,如果返回true,表示允许赋值,false则保留原来的值 阅读全文

posted @ 2018-12-19 14:58 LoaderMan 阅读(479) 评论(0) 推荐(0) 编辑

kotlin标准委托之可观察属性

摘要: 所谓可观察属性就是当属性变化时可以拦截其变化,实现观察属性值变化的委托函数是Delegates.observable.该函数接受二个参数,第一个是初始化值,第2个属性值变化事件的响应器.每次我们向属性赋值时,响应器都会被调用,响应器函数的三个函数,被赋值的属性,赋值前旧属性值,以及赋值后的新属性值 阅读全文

posted @ 2018-12-19 14:52 LoaderMan 阅读(380) 评论(0) 推荐(0) 编辑

kotlin标准委托之惰性装载

摘要: lazy函数,接受一个lambda表达式作为参数,返回一个Lazy<T> 类型的实例,这个实例可以作为委托,实现惰性加载属性;第一次调用get时,将会执行从lazy函数传入的lambda表达式,然后会记住这次结果,以后所有对get调用都只会简单的返回以前记住的结果 输出 默认情况下,惰性加载属性的执 阅读全文

posted @ 2018-12-19 14:44 LoaderMan 阅读(347) 评论(0) 推荐(0) 编辑

kotlin 委托类的初始化函数

摘要: 输出: 阅读全文

posted @ 2018-12-19 14:31 LoaderMan 阅读(800) 评论(0) 推荐(0) 编辑

kotlin委托属性

摘要: 输出: 上面代码冗余,所谓委托类,就是一个包含getValue和setValue函数的类,这两个函数operator声明 在使用委托类时,需要by关键字,创建委托类实例的代码放在by后面 如下 输出结果和上面一样! 阅读全文

posted @ 2018-12-19 14:11 LoaderMan 阅读(547) 评论(0) 推荐(0) 编辑

kotlin 类的委托

摘要: 可以看出:demo类使用by关键字将base类的printL函数委托给了一个对象.该对象需要通过demo类的主构造器传入,而且该对象类必须实现base接口! 阅读全文

posted @ 2018-12-19 13:49 LoaderMan 阅读(525) 评论(0) 推荐(0) 编辑

kotlin陪伴对象

摘要: 在kotlin中并没有静态类成员的概念,但并不等于实现类似于静态类成员的功能,陪伴对象可以解决这个问题 注意:虽然陪伴对象的成员看起来像其他语言中的静态成员,但是在运行期间,这些成员仍然是真正的对象的实例的成员,与静态成员不同,不过使用@jvmStatic进行注释,kotlin编译器会将其编译成by 阅读全文

posted @ 2018-12-19 11:37 LoaderMan 阅读(195) 评论(0) 推荐(0) 编辑

导航