kotlin 一用就爱上

2023-11-17

       前言:

              前晚谷歌大会正式宣布,kotlin正式成为官方开发语言,圈里顿时闹得沸沸扬扬,之前也有去捣鼓一下,就是每次下载插件的时候会失败,然后就没捣鼓,但是谷歌昨天正式宣布了所以得去捣鼓了,刚刚开始的时候下载的时候也会弹出个失败窗口:

             

直接复制图中的链接到浏览器,就能下载,然后把下载的压缩包离线导入,具体的步骤为settings->plugins->install plugin from disk重启即可.


创建kotlin应用

1.在项目的build.gradle中添加

classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.1.2-3'

2.在app的build.gradle添加:

apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'

接下来将MainActivity  java文件转换为kotlin文件,ctrl+alt+shift+k,转换前后的代码,如下

public class MainActivity extends AppCompatActivity {

  

    protected override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

      
    }
}

转换后:

class MainActivity : AppCompatActivity() {


    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        tv_text.text = "hello kotlin"
    }

}

发现代码确实如kolin官网所说,更加的简洁了,更重的是,之前找控件的代码,还需要findByid,现在变得很简洁,直接用控件的id去设置即可

 tv_text.text = "hello kotlin"


函数扩展

   函数扩展,可以让你对任意类进行扩展,减少继承等复杂操作,下面举个例子,新建一个kt文件,名字自定义,代码如下:

   

fun Context.toast(message:String, length : Int = Toast.LENGTH_SHORT){
    Toast.makeText(this,message,length).show()
}

    加上上面这行代码,就可以在任意Context类型中使用,减少了继承的操作,这段代码语法是 fun + 类型.函数(参数)

    如果第一次使用,还需要引入如下远程库:

    

  compile 'com.mapzen:on-the-road:0.8.1'

    如果不引用这个库,当调用这个方法时,程序会崩溃,具体报的错误为:

   java.lang.NoClassDefFoundError: Failed resolution of: Lkotlin/jvm/internal/Intrinsics;


kotlin大大的提升开发效率,大家赶紧用吧,用了就爱上。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

kotlin 一用就爱上 的相关文章

随机推荐

  • Java读取resource目录下图片插入excel导出

    1 将图片放在resoure目录下 2 读取图片并插入excel private void monthContractRow1 Sheet sheet CellStyle style1 String language Workbook wo
  • ElementUI常用组件之布局组件

    安装elementui npm i element ui S 配置ElementUI 1 main js中 引入elementUI 共分三步走 a import element ui b import css文件 c use Element
  • jQuery中$ $()与$(document) this与$(this)三个的区别

    是jquery专用的特殊符号 bai可以说所有dujquery函数的调用都是从 开始的 在jquery里面表示一zhi个选择器 括号dao里面填写一定的表达式就可以选中你想要的元素 jquery的选择器除了能很好地遵循css的表达式外 还额
  • Ubuntu 无法进行SSH连接,开启22端口

    我们在VM中安装好Ubuntu 虚拟机后 经常需要使用Xshell等工具进行远程连接 但是会出现无法连接的问题 原因是Ubuntu中默认关闭了SSH 服务 1 查看Ubuntu虚拟机IP地址 命令 ifconfig 2 利用XShell等工
  • 点击按钮改变颜色 模型动画暂停继续功能

    using System Collections using System Collections Generic using UnityEngine using UnityEngine UI using DG Tweening publi
  • C语言关键字必备练习题

    1 作业标题 642 关于C语言关键字说法正确的是 作业内容 A 关键字可以自己创建 B 关键字不能自己创建 C 关键字可以做变量名 D typedef不是关键字 答案解析 C语言关键字 C语言定义的 具有特定含义 专门用于特殊用途的C语言
  • 【c++】内存四区(代码区、全局区、栈区、堆区)

    文章目录 内存分区模型 代码区 全局区 栈区 堆区 内存分区模型 c 程序在执行时 将内存大方向划分为4个区域 代码区 存放函数体的二进制代码 有操作系统进行管理 全局区 存放全局变量和静态变量以及常量 栈区 由编译器自动分配释放 存放函数
  • C++ 产生随机数

    推荐一个博客 以下转载该博客部分内容 主要代码 include
  • JSP、JSTL标签

  • 02-JavaWeb之Servlet及相关知识点

    一 Servlet 简介 Java Servlet 是运行在 Web 服务器 tomcat 或应用服务器上的程序 它可以接收来自 Web 浏览器或其他 HTTP 客户端的请求 并进行结果的响应 使用 Servlet 可以收集来自网页表单的用
  • 1064 Complete Binary Search Tree (30 分)

    题目 题目链接 题解 数据结构 二叉排序树的中序遍历是单调递增的 完全二叉树具有很好的顺序存储的性质 利用中序遍历和递归 先构造左子树 再对根节点进行赋值 再构造右子树 我是fw 代码 include
  • 【异常】 DevOps工具链SonarQube提示严重的错误,内容为Save and re-use this “Random“,需要使用SecureRandom替换Random

    一 报错内容 二 报错说明 2 1 Random和SecureRandom的区别 Random生成伪随机数 这意味着这些数字并不是真正的随机数 而是由算法生成的 如果攻击者知道生成这些数字的算法 那么Random生成的数字就可以被预测 因此
  • scrapy中使用正确的xpath出现空列表问题

    今天在使用scrapy框架爬取网页时 使用正确的xpath来爬取时 爬取的缺失空列表 代码如下 coding utf 8 import scrapy class HaodfSpider scrapy Spider name haodf st
  • Elasticsearch基本查询

    目录 基本语法 查询所有 match all 匹配查询 match 多字段查询 multi match 精确匹配 term 多词条精确匹配 terms 结果过滤 直接指定字段 指定includes和excludes 布尔组合查询 bool
  • Minio入门教学

    Minio 文件存储系统 以往的项目 用的比较多的OSS服务是腾讯云和阿里云的存储服务 最近的几个项目 普遍要使用Minio 所以我在开发服务器和测试服务器上都装上了minio 一 首先minio的安装 采用docker安装 因为docke
  • 预处理丨去趋势(Matlab和C++)

    预处理丨去趋势 Matlab和C 预处理丨去趋势 Matlab和C 介绍 原理 MATLAB 实现 C 实现 本科没学过信号处理 对采集的数据需要做预处理 如去趋势 本文介绍一下去趋势的作用和方法 介绍 1 去趋势波动分析 detrende
  • anaconda+pyCharm安装教程

    1 前往官网下载anaconda 官网下载地址 https www anaconda com products individual 无脑next就完事了 记得修改安装路径 D盘或其他盘都行 这两个框都勾选上 省下配置环境的烦恼 2 接下来
  • MD5算法 —— C语言实现(字符串的加密)

    网上找到的实现md5函数代码 包括一个头文件md5 h和一个源文件md5 c 用下面的测试代码test c测试通过 各文件依次如下 h文件 md5 h ifndef MD5 H define MD5 H typedef struct uns
  • 格式文档时使用替换删除空白行

    格式文档时使用替换删除空白行 手动的话 可以使用替换 选上正则 匹配栏 n s 2 n s 匹配大于等于2个换行的 替换栏 1 然后一键替换即可
  • kotlin 一用就爱上

    前言 前晚谷歌大会正式宣布 kotlin正式成为官方开发语言 圈里顿时闹得沸沸扬扬 之前也有去捣鼓一下 就是每次下载插件的时候会失败 然后就没捣鼓 但是谷歌昨天正式宣布了所以得去捣鼓了 刚刚开始的时候下载的时候也会弹出个失败窗口 直接复制图