NVM的安装和使用
#nvm node:是一个基于 Chrome V8 引擎的 JS 运行环境。 npm:是 node.js 默认的包管理系统(用 JavaScript 编写的),在安装的 node 的时候,npm 也会跟着一起安装,管理 node 中的第三方插件。 npx:npm 从 v5.2.0 开始新增了 npx 命令,>= 该版本会自动安装 npx,附带:npx 有什么作用跟意义?为什么要有 npx?什么场景使用?。 nrm:是一个 npm 源管理工具,使用它可以快速切换 npm 源,默认是官方源,当 npm 下载包过慢时,可能需要切换到第三方源(例如:淘宝、科大…),还有公司私有源地址等等。 nvm:node 版本管理器,也就是说:一个 nvm 可以管理多个 node 版本(包含 npm 与 npx),可以方便快捷的 安装、切换 不同版本的 node。 安装nvm的安装只需要执行以下一条命令linux下 1curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh |...
kotlin接口和控制继承,可见修饰符
接口在kotlin中,也是使用interface来定义接口的。接口中,可以定义属性和方法,方法可以实现,也可以不实现。但是他们都是默认为open的,也就是可以被继承和重写的。 属性不能赋值,而且实现了这个接口的方法必须重写该属性,添加上get,set方法 未实现的方法在被之后的类实现时,必须把这个方法也同时实现了。 实现的方法(即带方法体的方法)可以不重写,而是直接使用。1234567891011121314151617fun main(){ B().showA() B().showB()}interface A{ val sb:String fun showA(){ println(123) } fun showB(){ println("234") }}class B(): A { override val sb: String get() =...
kotlin处理集合:可变参数,中缀调用
可变参数在kotlin中创建一个集合,可以往其中传递任意数量的参数进去。 1fun listOf<T>(vararg values:T):List<T>{...} 在kotlin中,是直接使用vararg来说修饰可变参数的。而且kotlin和java的另一个区别就是java中,你可以按照原样传递某个数组进去,而kotlin需要你显式的对这个数组进行解包操作。例如 123val list1 = listOf("1","2")val list2 = listOf(*list1,"3")//最后list2的结果为["1","2","3"] 这个功能被称为展开运算符 中缀调用和解构声明在kotlin中,创建一个map 1val map = mapOf(1 to "One",2 to...
kotlin扩展函数
Kotlin的又一大特色 给别人的类添加扩展函数和属性当我们在一个现有的java或者android项目中,需要添加kotlin的代码,而我们又不能把java等之类的代码全部转重写成kotlin,那会大大降低效率,而kotlin的扩展函数就很好的解决了这个办法。例如:我要获取字符串的最后一个字符: 1234fun main() { println("kotlin".lastChar())}fun String.lastChar(): Char = this.get(this.length-1) 结果为 12nProcess finished with exit code...
kotlin函数特点
kotlin中的集合在kotlin中 12345678fun main(args: Array<String>) { println(set.javaClass) println(list.javaClass) println(map.javaClass)}val set = setOf(1,2,3)val list = arrayListOf(1,2,3,4)val map = mapOf(1 to 'a',2 to 'b') 他的输出结果为 12345class java.util.LinkedHashSetclass java.util.ArrayListclass java.util.LinkedHashMapProcess finished with exit code...
kotlin异常
在kotlin中,他解决异常的方式与java类似,有两种共解决办法。 throw可以选择用throw来抛出异常。但是不一样的是,在kotlin中,他的throw是一个表达式,也就是throw可以作为一个值让其他的表达式使用。 try-cacth 可以像java一样使用try-catch 在kotlin中,try-catch也是表达式的形式。例如:12345val number = try{ Integer.parseInt(reader.readLine())}catch(e:NumberFormatException){ null} 他会返回最后代码块中的最后一个表达式。而kotlin与java异常不同之处在java中有两种异常,受检异常和未受检异常。java必须显示的处理受检异常,例如IOException,而kotlin中,不区分受检异常和非受检异常。你不需要用throws来强制的抛出异常。
kotlin枚举类和“WHEN”,in
枚举类在kotlin中,有enum的一个所谓的软关键字,她只在class钱买你才有特殊意义,其他时候都是普通的名称使用。 12345678910111213enum class Color(val r: Int, val g: Int, val b: Int) { RED(255, 0, 0), ORANGE(255, 165, 0), YELLOW(255, 255, 0), GREEN(0, 255, 0), BLUE(0, 0, 255);//如果在枚举类中,有定义任何方法的话,需要将定义的常量后面加上分号来与方法分开 fun rgb() = (r * 256 + g) * 256 + b}fun main() { println(Color.RED)} 结果为 123REDProcess finished with exit code 0 //如果没有选择方法或者属性字段,她会默认输出他的名字。 when一些比较常用的方法 1234567891011import...
kotlin高级函数和lambda表达式
kotlin的表达式函数体 12345678910111213141516171819202122fun main() { println(add_express(1, 2)) println(add_block(1, 2)) println(add_lambda(1, 2))}/** * 代码块体,最完整的函数体 */fun add_block(a: Int, b: Int): Int { return a + b}/** * 表达式体 * 要求,他的函数体是由单个表达式构成的。 * 那么她会自动判断返回类型。可以省略掉返回类型,同时需要省略掉花括号和return */fun add_express(a: Int, b: Int) = a + bvar add_lambda = { a: Int, b: Int -> a+b}fun add(a:Int,b:Int):(Int,Int)->(Int)={ a: Int, b: Int ->...
kotlin细节(1)if表达式
在kotlin中,if是表达式,而不是语句。他们的区别是表达式有值,可以作为另一个表达式的一部分使用。而语句没有。 而另一方面,在java中赋值操作是表达式,所以你可以在很多的if判断中看到赋值的出现,而kotlin中赋值操作变成了语句,这样有助于避免比较和赋值的混淆
Echarts入门
echarts的引入 在原生html中引入echarts你可以在官方下载链接获得echarts的js包 1234<!--下载包的方式--><script src="你的echar.js的路径"></script><!--引入网络链接的方式--><script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.4.2/echarts.common.js"></script> 在vue中引入echarts echarts的使用echarts会自动适应和匹配容器的大小 通过js来使用echar首先先定义一个容器,用来防止echart图标 1234567891011121314151617181920212223<div id="echart-box"...