上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 50 下一页

2018年12月21日

Swift 循环

摘要: 循环类型 Swift 语言提供了以下几种循环类型。点击链接查看每个类型的详细描述: for-in for 循环 该循环方式在 Swift 3 中已经弃用。 用来重复执行一系列语句直到达成特定条件达成,一般通过在每次循环完成后增加计数器的值来实现。 while 循环 repeat...while 循环 阅读全文

posted @ 2018-12-21 11:35 LoaderMan 阅读(304) 评论(0) 推荐(0) 编辑

Swift 条件语句

摘要: 条件语句通过设定的一个或多个条件来执行程序,在条件为真时执行指定的语句,在条件为 false 时执行另外指定的语句。 可以通过下图来简单了解条件语句的执行过程: Swift 提供了以下几种类型的条件语句: if 语句 if...else 语句 if...else if...else 语句 内嵌 if 阅读全文

posted @ 2018-12-21 11:31 LoaderMan 阅读(626) 评论(0) 推荐(0) 编辑

Swift 运算符

摘要: 运算符是一个符号,用于告诉编译器执行一个数学或逻辑运算。 Swift 提供了以下几种运算符: 算术运算符 比较运算符 逻辑运算符 位运算符 赋值运算符 区间运算符 其他运算符 算术运算符 以下表格列出了 Swift 语言支持的算术运算符,其中变量 A 为 10,变量 B 为 20: 注意:swift 阅读全文

posted @ 2018-12-21 11:13 LoaderMan 阅读(250) 评论(0) 推荐(0) 编辑

Swift 字面量

摘要: 所谓字面量,就是指像特定的数字,字符串或者是布尔值这样,能够直接了当地指出自己的类型并为变量进行赋值的值。比如在下面: 整型字面量 整型字面量可以是一个十进制,二进制,八进制或十六进制常量。 二进制前缀为 0b,八进制前缀为 0o,十六进制前缀为 0x,十进制没有前缀: 以下为一些整型字面量的实例: 阅读全文

posted @ 2018-12-21 11:03 LoaderMan 阅读(228) 评论(0) 推荐(0) 编辑

Swift 常量

摘要: 常量一旦设定,在程序运行时就无法改变其值。 常量可以是任何的数据类型如:整型常量,浮点型常量,字符常量或字符串常量。同样也有枚举类型的常量: 常量类似于变量,区别在于常量的值一旦设定就不能改变,而变量的值可以随意更改。 常量声明 常量使用关键字 let 来声明,语法如下: 以下是一个简单的 Swif 阅读全文

posted @ 2018-12-21 10:53 LoaderMan 阅读(141) 评论(0) 推荐(0) 编辑

Swift 可选(Optionals)类型

摘要: Swift 的可选(Optional)类型,用于处理值缺失的情况。可选表示"那儿有一个值,并且它等于 x "或者"那儿没有值"。 Swfit语言定义后缀?作为命名类型Optional的简写,换句话说,以下两种声明是相等的: 在这两种情况下,变量 optionalInteger 都是可选整数类型。注意 阅读全文

posted @ 2018-12-21 10:48 LoaderMan 阅读(393) 评论(0) 推荐(0) 编辑

Swift 变量

摘要: 变量是一种使用方便的占位符,用于引用计算机内存地址。 Swift 每个变量都指定了特定的类型,该类型决定了变量占用内存的大小,不同的数据类型也决定可存储值的范围。 包括整形Int、浮点数Double和Float、布尔类型Bool以及字符串类型String。此外,Swift还提供了其他更强大数据类型, 阅读全文

posted @ 2018-12-21 10:34 LoaderMan 阅读(167) 评论(0) 推荐(0) 编辑

Swift 数据类型

摘要: Swift 提供了非常丰富的数据类型,以下列出了常用了几种数据类型: Int 一般来说,你不需要专门指定整数的长度。Swift 提供了一个特殊的整数类型Int,长度与当前平台的原生字长相同: 在32位平台上,Int和Int32长度相同。 在64位平台上,Int和Int64长度相同。 除非你需要特定长 阅读全文

posted @ 2018-12-21 10:27 LoaderMan 阅读(212) 评论(0) 推荐(0) 编辑

Swift 基本语法

摘要: 如果创建的是 OS X playground 需要引入 Cocoa : 如果我们想创建 iOS playground 则需要引入 UIKit : Swift 引入 我们可以使用 import 语句来引入任何的 Objective-C 框架(或 C 库)到 Swift 程序中。例如 import co 阅读全文

posted @ 2018-12-21 09:44 LoaderMan 阅读(146) 评论(0) 推荐(0) 编辑

Swift介绍

摘要: wift 是一种支持多编程范式和编译式的开源编程语言,苹果于2014年WWDC(苹果开发者大会)发布,用于开发 iOS,OS X 和 watchOS 应用程序。 Swift 结合了 C 和 Objective-C 的优点并且不受 C 兼容性的限制。 Swift 在 Mac OS 和 iOS 平台可以 阅读全文

posted @ 2018-12-21 09:28 LoaderMan 阅读(254) 评论(0) 推荐(0) 编辑

2018年12月20日

Kotlin中反射

摘要: 枚举类成员 输出: 动态调用成员函数 动态调用成员属性 阅读全文

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

kotlin之注解

摘要: 注解是用来代码添加元数据的一种手段,要声明一个 注解,需要在类之前添加annotation修饰符 注解其他属性,可以通过向注解类添加元注解的方式来指定 @Target 指定这个注解可以被用于哪些元素(类,函数,属性,和表达式) @Retention指定这个注解可的信息是否被保存到编译后的class文 阅读全文

posted @ 2018-12-20 14:10 LoaderMan 阅读(1242) 评论(0) 推荐(0) 编辑

kotlin异常类

摘要: kotlin中所有的错误异常类都是throwable的自雷,没各一次都能带有一个错误消息,调用堆栈,以及可选的错误原因,要抛出异常,可以使用throw表达式 要捕获异常可以使用 阅读全文

posted @ 2018-12-20 13:57 LoaderMan 阅读(785) 评论(0) 推荐(0) 编辑

kotlin之null值安全性

摘要: 要允许null值, 需要将变量声明为可为null的字符串类型:String? 上面代码是安全调用,如果为null则返回为null Elcis操作符 !!操作符 如果b为null ,抛出NPE异常 安全类型的转换 如果转换失败则返回null 阅读全文

posted @ 2018-12-20 13:52 LoaderMan 阅读(472) 评论(0) 推荐(0) 编辑

kotlin之操作符重载

摘要: 一元操作符 二元操作符 方括号操作符重载 赋值操作符重载 逻辑操作符重载 阅读全文

posted @ 2018-12-20 11:56 LoaderMan 阅读(641) 评论(0) 推荐(0) 编辑

kotlin 之相等判断

摘要: 在kotlin 中存在二种相等的判断: 1.引用相等 也就是说,两个引用指向同一个对象,使用 操作 ,相反操作为!==来判断 2.结构相等 使用equals 函数相等和==操作符 说明:a不为null,将为调用equals(Any)?函数,否则(也就是a为null)将会检查b是否为指向null 阅读全文

posted @ 2018-12-20 11:13 LoaderMan 阅读(1925) 评论(0) 推荐(0) 编辑

kotlin中this 表达式

摘要: this表达式,可以表示当前函数的接收者,在类的成员函数中,this 指向这个类的当前对象实例,在扩展函数中或带有接收者数字面值,this代表调用函数时,在点号左侧传递的接收者参数 如果this没有限定符,那么它指向包含当前代码的最内层范围.,如果想指向其他范围的内的this,需要使用标签限定符 为 阅读全文

posted @ 2018-12-20 11:07 LoaderMan 阅读(2531) 评论(0) 推荐(0) 编辑

kotlin中类型检查和类型转换

摘要: is 和!is操作符,可以在运行时检查一个对象与一个给定的类型是否一致,或者使用与它相反的!is操作符 智能类型的转换 强制类型转换 如果类型强制转换,而且类型不兼容,那么会抛类型转换异常,这是不安全的,不安全的类型转换使用中辍操作符as 为了避免抛异常.可以使用as? ,当类型转换失败时候回返回n 阅读全文

posted @ 2018-12-20 10:54 LoaderMan 阅读(706) 评论(0) 推荐(0) 编辑

kotlin中值范围

摘要: 值范围表达式用rangeTo函数,该函数的操作符形式是二个点(..)另外还有in 和!in 相关操作符,任何可比较的大小的数据类型都可以定义值范围 值范围应用 rangTo函数只是简单的调用了*Range 类的构造器 downTo扩展函数可用于一对整数类型值 reversed 对每个类都定义了rev 阅读全文

posted @ 2018-12-20 10:36 LoaderMan 阅读(834) 评论(0) 推荐(0) 编辑

kotlin中集合

摘要: fun main(arg: Array) { //可读写的集合创建 val mutableListOf1 = mutableListOf(1, 2, 3) val mutableListOf2 = mutableListOf() val mutableSetOf1 = mutableSetOf(11, 22, 33) val mutableSetOf... 阅读全文

posted @ 2018-12-20 10:22 LoaderMan 阅读(321) 评论(0) 推荐(0) 编辑

kotlin数据解构

摘要: fun main(arg: Array) { val person = person("tom") var (name) = person//解构 println(name) // ----------------- val map = mutableMapOf() map.put(1, "tom") for ((key, value) i... 阅读全文

posted @ 2018-12-20 09:33 LoaderMan 阅读(557) 评论(0) 推荐(0) 编辑

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) 编辑

上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 50 下一页

导航