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"...
Kali Linux 安装英伟达显卡驱动和CUDA套件
事情是这样子的,我最近刚装kali linux在我的笔记本上,想从windows转为linux体验一下,然后我访问Google浏览器发现我的cpu居然跑到了90%以上,风扇呼呼转,真的是见了鬼了。后来意识到,linux可能没有英伟达显卡的驱动这篇文章说明一下安装驱动的过程 确保仓库包含contrib和non-free部分。Kali默认就有此部分。 检查显卡 下面的命令会显示你现在的显卡是什么。123456┌──(root㉿kali)-[~]└─# lspci | grep -i vga10:22.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] (rev a1)┌──(root㉿kali)-[~]└─# 为了查看nvidia显卡,可以安装nvidia-detect,并运行此软件。12345678910┌──(root㉿kali)-[~]└─# apt install nvidia-detect┌──(root㉿kali)-[~]└─# nvidia-detect...
IDEA正版激活
idea免费激活
安装 删除 卸载 Deb 包文件
图形界面直接点击deb文件即可完成安装 命令行界面12345678#卸载sudo apt-get autoremove 要移除的软件包名#安装sudo apt-get install 要安装的软件包名#要安装.deb套件包时sudo dpkg -i package_file.deb#要卸载.deb套件包时sudo dpkg -r package_file.deb
Android入门(2)
Android四大组件分别是Activity,Service,BroadcastRecerver和ContentProvider。 其中Activity是所有Android应用程序的门面,你再前端看得到的都在这其中。 而Service就是在后台默默运行,即便用户退出了应用,Service也会在后台运行。 BroadcastReceiver允许你的应用接受来自各处的广播消息,比如电话,短信等,当然,你的应用也可以向外发出广播信息。 ContentProvider则为应用程序之间共享数据提供了可能,比如你想读取系统通讯录中的联系人,即想要通过ContentProvider来实现。
Android入门(1)
目录结构Project项目默认你已经通过idea或者android studio生成了一个android程序了。那么你将会看到如下的目录结构 .gradle和.idea这两个目录下放置到都是Android...
kotlin空指针
在kotlin中,最为核心的一个内容就是kotlin的空安全判断。他可以通过?来简单的确定是否为空类型而接下来要说明的是let函数,对于任何一个类都继承了该方法。例如 123obj.let{obj2? ->//编写具体的业务逻辑} 可以看到,obj对象调用的let函数,后面是lambda表达式,他会直接obj对象本身传递到函数中,就是obj2,如果只有一个参数,也可以直接省略,用it代替。而let的特性让他特别适合处理空指针检查下面示例一个普通的空指针检查 123456fun doStudy(study: Study?){ if(study != null){ study.readBooks() study.doHomework() }} 在kotlin中,你用if判断完后,他会自动检测,然后转化为非空的study类,然后就可以正常的调用。而如果使用let的话,就会是下面这种情况 123456fun doStudy(study: Study?){ ...