Kotlin中国 为您找到相关结果 22

当Kotlin遇见RxJava多数据源

温馨提醒 阅读本文最好有Kotlin基础,若没有基础,可参考之前文章Kotlin初探,使用Kotlin优雅的开发Android应用,以及RxJava基础(本文基于RxJava2),当然我也会尽可能详细解释让你顺利阅读本文。 源码传送门 写在前面 最近几天回过头,看了之前的总结RxJava操作符系列,感觉对Rxjava多数据源的处理不是很理解,所以在总结学习一波。大家都知道,最近Kotlin语言一直占据热搜榜,褒贬不一,但我想说,不管有什么想法都要抛在脑后,毕竟Google爸爸出手,你不情愿也要跟随它的步伐。鉴于此,本篇对RxJava多数据源的总结是基于Kotlin语言,也让大家明白,使用Kotlin开发应用并不是不能使用Java库,现在有一部分人担心,Kotlin第三方库那么少,如果使用Ko...阅读全文

博文 2017-05-26 07:00:01 xiehuimx

Kotlin Koans学习笔记(2)

这是Kotlin Koans学习笔记的第二部分,上一篇在这里。 第二部分一共12个任务,都是关于Kotlin集合操作。 13.Introduction Kotlin提供了一系列的to方法将一个集合类型转换成另外一个集合类型。 这一部分的第一个任务很简单,根据提示就可以完成,关于任务就不必多说。 先说明一下第二部分所有任务的数据模型。这一部分所有的任务都是围绕一个商店(Shop)展开,商店有一个客户(Customer)列表。 客户具有姓名、城市和订单(Order)列表三个属性。 订单具有商品(Product)列表和是否已经发货两个属性。 商品具有名称和价格两个属性。 data class Shop(val name: String, val customers: List)...阅读全文

博文 2017-05-23 14:30:20 唐先僧

怎么在Android studio中使用kotlin

1、使用Android Studio的插件 2、将Android Studio升级到3.0版本:目前不推荐,因为3.0的版本目前还是Dev Channel渠道,也就是开发渠道,还没正式发布 所以,今天我们就讲讲如何使用第1种方式来创建第一个Kotlin项目: 插件安装: 1、进入Plugins\Install JetBrains plugins中,搜索Kotlin后安装 2、正常创建一个Android 项目(平时怎么创建的现在还是怎么创建),截图如下 3、通过转换工具将java源文件转换成Kotlin 转换之后的结果变化如下:java源文件的后缀变成.kt,类的继承方式变了 4、配置Kotlin的依赖 以上操作,会在Project的build.gradle文件中加入红色标注内容 同时在子模块...阅读全文

博文 2017-06-07 19:01:07 课课家IT

从零尝试IM聊天界面

移动端最没尝试的就属IM了,这次想拆出自己尝试的聊天界面记录下还是基于kotlin开发 WechatIMG2.jpeg 我觉得聊天有很多种,当然今天只说一对一的 屏幕快照 2017-06-11 11.32.34.png 对于消息数据的存储跟检索需要定义一些枚举来方便自己比如ItemType作为消息类型决定消息的是否发送或接收或时间line enum class ItemType(var value:Int){ Time(0), SendText(1), SendImg(2), ReceiveText(3), ReceiveImg(4) } 比如TimeType与ContentType现在只区分昨天以前、昨天与今天内容也只简单的区分文本与图片当然等服务端IM正式联用会拓展功能的 enum cl...阅读全文

博文 2017-06-11 13:02:15 奈文摩尔定律

Kotlin学习之-4.3 基础类型

4.3 基础类型 Kotlin中,所有都是对象是因为我们可以调用任何对象的成员函数和属性。有一些类型是内建的,因为这些类型的实现是优化过的,但是使用的时候看起来和普通类是一样的。本节中我们将介绍这些类型:数据类型,字符类型,布尔类型和数组。(number, character, boolean 和array) 数据类型 numbers Kotlin中处理数据类型和Java方法很类似,但也不完全一样。例如,没有隐式地扩展数据类型字长,还有写法上也稍有不同。 Kotlin提供下面这些内置的数据类型来表示数字,这和Java很接近。 Type Bit width Double 64 Float 32 Long 64 Int 32 Short 16 Byte 8 注意字符类型不在数据类型中。 字符常量...阅读全文

博文 2017-06-14 02:00:31 farmer_cc

手把手教你写一个自定义 ViewGroup

手把手教你写一个自定义 ViewGroup 关键字:kotlin、custom、ViewGroup custom view group 书写流程 1. override onLayout 首先,最直觉的做法,就是写下 public class CustomViewGroup extends ViewGroup {} 。对于 kotlin 呢,就是 class CustomViewGroup : ViewGroup {} 。然后,根据编译器的提示,我们去实现 onLayout 方法。那么这个 onLayout 的作用是什么呢? 简单翻阅源码,发现在 View 的源码下找到了答案: public void layout(int l, int t, int r, int b) { // ... i...阅读全文

博文 2017-06-15 21:02:19 codingzxon

Kotlin学习笔记和知识点(一)

1.用val或var声明变量,指明它们是不可变的或可变的 //定义函数 fun getVar():String{ return "var" } //赋值 val x =1 var s= getVar() 2.基本数据类型 //Boolean val aBoolear: Boolean=true val anotherBoolear: Boolean=false //Int val anInt: Int =8 val anotherInt: Int =0xFF val moreInt: Int =0b00000011 val maxInt : Int=Int.MAX_VALUE val minInt: Int=Int.MIN_VALUE //Float 浮点 val aFloat: Float...阅读全文

博文 2017-06-16 10:02:27 看一季残花落幕

简述Kotlin中let, apply, run, with的区别

初学Kotlin,通过几个简单的例子来简单看一下Kotlin中let, apply,run, with的区别。 let 官方源码: public inline fun T.let(block: (T) -> R): R = block(this) 例子: fun main(args: Array) { val list: MutableList = mutableListOf("A","B","C") val change: Any change = list.let { it.add("D") it.add("E") it.size } println("list = $list") println("change = $change") } ...阅读全文

博文 2017-06-16 16:02:25 NullThinking

Kotlin 集合

与 Java 不同, Kotlin 明确地区分可变的和不可变的集合(list, set, map, 等等)。可变的集合可以增删改集合元素;而不可变集合也提供了相应的方法,但是指向会创建新的集合,而不是在原来的集合上修改。 Kotlin 的集合都在命名空间 kotlin.collections。 Arrays 数组通过 arrayOf()创建。 Lists Maps 和 Java 的一样, 存储键值对。Kotlin 通过 mapOf()创建 Map。 Kotlin 有 HashMap, LinkedHashMap, TreeMap。 Sets LinkedHashSet, HashSet, TreeSet。 Sequences Sequences 用于为止大小的集合, 比如从数据库或者文件读取...阅读全文

博文 2017-06-01 16:03:12 jinkui

Kotlin Reference (三) Basic Types, String, Array and Imports

KotLin 相关文档 官方在线Reference kotlin-docs.pdf Kotlin for android Developers 中文翻译 Kotlin开发工具集成,相关平台支持指南 Kotlin开源项目与Libraries Kotlin开源项目、资源、书籍及课程搜索平台 Google’s sample projects written in Kotlin 基本数据类型 Kotlin中支持的基本数据类型及它所占Bit宽度: Type Bit width Double 64 Float 32 Long 64 Int 32 Short 16 Byte 8 Char 在kotlin中 并不是一个数值类型 kotlin不支持8进制, 支持 2、10、16进制 下面的代码,示例了: 关于...阅读全文

博文 2017-06-01 19:00:31 jjwwmlp456

一个初出茅庐的Android工程师,面试看啥?

文来自:https://dev.to/ditn/what-i-look-for-in-a-junior-android-dev看了原文,经过了总结,具体如下:大家都是毕业生,谁也都只做过实习。为什么有的人可以找到工作,有人找不到呢?或者学了好几年(我学了6年了),研究生毕业了还是懵懵懂懂的。如果想走Andorid的路,到底什么是最重要的?Sillset 需要的知识1.The Activity Lifecycle活动的生命进程老生常谈,但是还是比较复杂。不需要全懂也起码要明白onCreateonPauseonResumeand onDestroy2.Android Components 安卓组件英文作者说自己从来没有用过Content Providers,但是要明白每个具体是干啥的。Activ...阅读全文

Java & Groovy & Scala & Kotlin - 11.条件表达式

条件表达式 Overview 本节主要介绍最基本的条件表达式:if 语句 Java 篇 if if 语句用于表达这样一种概念,在某种条件下执行一种操作,在另一种条件下执行另一种操作,任何时候只有一个分支会被执行。 Java 中如果语句只有一行时可以省略花括号,不过一般不推荐这种用法。 例: int x = 1; int y = 2; if (x + y == 3) { System.out.println("x+y=3"); } else { System.out.println("x+y!=3"); } if (x + y == 3) System.out.println("x+y=3"); else System.out.println("x+y!=3"); Groovy 篇 Grooy...阅读全文

博文 2017-06-09 17:02:34 bookislife

Kotlin教程学习-数据类型

一切都是对象. 在Kotlin中一切都是对象.Kotlin有一些基本类型Boolean,Byte,Shot,Int,Long,Float,Double 在Kotlin中没有原始类型,以上这些类型都是对象,比如 运行结果如下 Kotlin支持16进制字面值,二进制字面值和科学记数法,官方文档中没有提到8进制 所有基本的几个数据类型不会进行显式类型转换,这一点尤为重要!那么如何进行转换呢?如下: 可以使用toLong,toInt,toShort,toChar等函数进行转换,不仅如此,数组Array<>也是对象,不但可以通过asList函数转换为List对象,数组类甚至包含了一个用于计算平均值的average函数.实际上Kotlin数组真的很像Collection(虽然Array并没有实现Coll...阅读全文

博文 2017-05-23 11:43:39 天命剑主

Kotlin入门之基本数据类型

基本数据类型 在kotlin中,一切皆对象,对于一个变量,我们可以调用它的任何成员函数和属性。某些数据类型是语言内建的,它们的实现都做了优化,但使用起来跟一般的类没有任何区别。本小节将讲解它们中的大部分,例如:numbser, characters, booleans和arrays。 数字(Numbers) Kotlin中处理数字的方式和Java很像,但不完全一样。例如:不能显式的向上扩展数字;字面常量在某些情况下稍微不同。 Kotlin提供以下内建类型表示数字(这与Java很相似): Type Bit Width Double 64 Float 32 Long 64 int 32 Short 16 Byte 8 注意:在Kotlin中字符(charactors)不是数字。 字面常量 下面是...阅读全文

博文 2017-05-27 15:14:24 I二师兄I

Kotlin笔记(1):基本数据类型

Kotlin 有一套自己的数据类型,跟java类似 Type 位数 Double 64 Float 32 Long 64 Int 32 Short 16 Byte 8 十进制: 123Long: 123L 十六进制: 0x0F 二进制:0b0001 Double: 1.23 Float: 1.23f 数字自动用Java 基本类型表示,如果变量有可能为null(Int?),则会自动box 类型之间不能自动转换,需要调用相应的方法: toByte toShort toInt toLong toFloat toDouble toChar Char 由单引号括住 '1',不能被直接当做数字。 数组由Array这个类来表示,创建array可以使用arrayOf(1,2,3)或者Array(5, { i...阅读全文

博文 2017-05-27 15:23:53 yangweigbh

Kotlin_package

Kotlin的源文件都是以package(包)开始的,也可以说是需要放在第一行。源文件不需要建立和包名对应的文件夹,可以随意存放在任意位置。 package package com.ws fun add() {} class Gobj {} //... 包声明包含源文件的所有内容,包括函数和类。例子中,add()的全名应该是com.ws.add。如果没有指定包名,文件将放在default包中。 默认的import 每一个文件都引入的包: kotlin.* kotlin.annotation.* kotlin.collections.* kotlin.comparisons.* (since 1.1) kotlin.io.* kotlin.ranges.* kotlin.sequences.*...阅读全文

博文 2017-05-23 11:43:21 widenstage

当Kotlin遇见RxJava多数据源

code4android.png 温馨提醒 阅读本文最好有Kotlin基础,若没有基础,可参考之前文章Kotlin初探,使用Kotlin优雅的开发Android应用,以及RxJava基础(本文基于RxJava2),当然我也会尽可能详细解释让你顺利阅读本文。 源码传送门 写在前面 最近几天回过头,看了之前的总结RxJava操作符系列,感觉对Rxjava多数据源的处理不是很理解,所以在总结学习一波。大家都知道,最近Kotlin语言一直占据热搜榜,褒贬不一,但我想说,不管有什么想法都要抛在脑后,毕竟Google爸爸出手,你不情愿也要跟随它的步伐。鉴于此,本篇对RxJava多数据源的总结是基于Kotlin语言,也让大家明白,使用Kotlin开发应用并不是不能使用Java库,现在有一部分人担心,Kot...阅读全文

博文 2017-05-27 15:12:17 Code4Android

Java & Groovy & Scala & Kotlin - 05.数据类型

Overview 本节主要介绍一下四门语言的数据类型 Java 篇 Java 的数据类型主要分为基本数据类型和引用数据类型 基本类型 Java 的基本类型有 int, long, float, double, char, boolean,即以小写字母开头的数据类型。 例 int x = 2; float y = 0.1f; boolean flag = false; 引用数据类型 Java 中除基本数据类型之外的所有数据都属于引用数据类型,并且所有引用数据类型都是 Object 类的子类。 BigDecimal Java 的基本数值类型及其包装类在进行浮点操作时,很有可能会损失精度。为此,Java 引进了 BigDecimal 类,可以在不损失精度的情况下进行计算。但是不幸的是 Java 的...阅读全文

博文 2017-05-27 15:12:17 bookislife

当Kotlin遇见RxJava多数据源

最近Kotlin语言一直占据热搜榜,褒贬不一,但我想说,不管有什么想法都要抛在脑后,毕竟Google爸爸出手,你不情愿也要跟随它的步伐。鉴于此,本篇对RxJava多数据源的总结是基于Kotlin语言,也让大家明白,使用Kotlin开发应用并不是不能使用Java库,现在有一部分人担心,Kotlin第三方库那么少,如果使用Kotlin开发那不是给自己找罪受,其实你完全错了,当你说这话的时候,我敢断定你都还没有接触Kotlin,因为Koltin有一个最重要的优势就是和Java绝对兼容。多数据源处理操作符在RxJava中多数据源处理的操作符很多,但是最经典的就要数merge,contact,zip了。如果对这三个操作符不是很熟悉的话,可以去查看它的使用,当然如果你懒得去看,我也会简单提一下。merg...阅读全文

博文 2017-05-27 15:14:23 熵谈电商

Kotlin阅读笔记(2)-基础概念

主要内容: Numbers 数字类,不同于Java数据类型,默认是封装类型,不提供autoBox,不提供各数据类型间隐式转换。 Characters 字符 Booleans Arrays Strings 一、数字(Numbers) Numbers Kotlin内置类型,与java不太一样,不提供数据间隐式转换;同时也没有基础数据和包装类之区分,在JVM中,默认为基础类型。其中,Char不属于Numbers类型,包含的数据类型如下: Double 64位 Float 32位 Long 64位 Int 32位 Short 16位 Byte 8位 各类型之间转换需要使用内置的转换方法,并不会隐式转换: toByte():Byte toInt():Int toChar():Char ... 输出In...阅读全文

博文 2017-05-27 15:19:09 黑石礁大魔王

Kotlin 可见度

Java 可见度有public, package, protected, private, 默认是 package。Kotlin 也提供了4种:public, internal, protected, private, 默认是 public。 private 表示只在这个类(以及它的所有成员)之内可以访问; protected 与 private 一样, 另外在子类中也可以访问; internal 在 本模块之内, 凡是能够访问到这个类的地方, 同时也能访问到这个类的 internal 成员; public 凡是能够访问到这个类的地方, 同时也能访问这个类的 public 成员。 一个模块(module)是指一起编译的一组 Kotlin 源代码文件。 参考《Programming Kotli...阅读全文

博文 2017-05-27 15:20:12 jinkui