Kotlin笔记(零)简介

news2024/12/26 23:03:17

百度百科简介

2017年,google公司在官网上宣布Kotlin成为Android的开发语言,使编码效率大增。Kotlin 语言由 JetBrains 公司推出,这是一个面向JVM的新语言

参考资料

  • 官网:https://kotlinlang.org/
  • 中文官网:https://www.kotlincn.net/docs/reference/
  • 官方博客:https://blog.jetbrains.com/kotlin/
  • 源码:https://github.com/JetBrains/kotlin
  • 菜鸟教程:https://www.runoob.com/kotlin/kotlin-tutorial.html

优点:

  • 简洁: 大大减少样板代码的数量。
  • 安全: 避免空指针异常等整个类的错误。
  • 互操作性: 充分利用 JVM、Android 和浏览器的现有库。
  • 工具友好: 可用任何 Java IDE 或者使用命令行构建。

Android Studio配置

1、通过 AS 工具添加
在这里插入图片描述
2、手动添加

project/build.gradle

buildscript {
    ...
    dependencies {
        classpath "com.android.tools.build:gradle:7.0.0"
        classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.10'
    }
}

app/build.gradle
KTX是 Android 官方提供的一个 Gradle 插件,能够为开发者提供便利,它最著名的功能就是能够省掉findViewById。

plugins {
    id 'com.android.application'
    id 'org.jetbrains.kotlin.android'
    id 'kotlin-android-extensions'
}
dependencies { 
    ...
    implementation "androidx.core:core-ktx:+" 
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" 
}

扩展函数还能消灭一切 xxUtils.java

// 以前使用 TextUtils
if (TextUtils.isEmpty(response)) {
    return
}

// 现在看起来好像是有一个成员方法
if (response.isNullOrBlank()) {
    return
}

如何查看 kotlin 对应的字节码

Tools -> Kotlin -> Show Kotlin Bytecode 打开 Kotlin Bytecode 面板
在这里插入图片描述
在字节码弹窗的左上角找到 Decompile 按钮,这样就能看到 Kotlin 等价的 Java 代码了。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/591488.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++ 遍历算法

🤔遍历算法: 🙂1.for_each 遍历容器 🔍介绍: 在C中,for_each是一个用于遍历容器元素并对它们进行操作的算法。它通常有三个参数: 📖1. 容器的起始位置(iterator&am…

chatgpt赋能python:Python中调换数据位置的方法

Python中调换数据位置的方法 在Python编程中,我们经常需要操作数据的位置,例如调换数组中的元素顺序、交换多个变量的值等。在本篇文章中,我们将介绍Python中调换数据位置的常用方法,并给出相应的代码示例。 1.使用临时变量交换…

ShardingSphere笔记(三):自定义分片算法 — 按月分表·真·自动建表

ShardingSphere笔记(二):自定义分片算法 — 按月分表真自动建表 文章目录 ShardingSphere笔记(二):自定义分片算法 — 按月分表真自动建表一、 前言二、 Springboot 的动态数据库三、 实现我们自己的动态数…

chatgpt赋能python:Python中最大公约数计算

Python中最大公约数计算 在Python编程中,求最大公约数是一个非常常见的需求。最大公约数一般简称为gcd,其定义为两个或多个整数的最大公因数。 在本篇文章中,我们将介绍Python中最常用的两种计算gcd的方法,并深入讲解它们的实现…

使用Intel ARC 750 GPU或Intel CPU硬件在GIMP上运行stable diffussion插件进行AI绘图

安装步骤: 1. clone代码: git clone https://gitee.com/cslola/openvino-ai-plugins-gimp.git 或者直接到github上下载最新 git clone https://github.com/intel/openvino-ai-plugins-gimp.git2. 安装python以来库文件 :: run install script open…

LeetCode - 10 正则表达式匹配

目录 题目来源 题目描述 示例 提示 题目解析 算法源码 题目来源 10. 正则表达式匹配 - 力扣(LeetCode) 题目描述 给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 . 和 * 的正则表达式匹配。 . 匹配任意单个字符 * 匹配零个或…

SpringBoot框架理解

1 SpringBoot入门 1.2 什么是SpringBoot 1 官网的解释 ​ Spring在官方首页是这么说的:说使用SpringBoot可以构造任何东西,SpringBoot是构造所有基于Spring的应用程序的起点,SpringBoot在于通过最少的配置为你启动程序。 2 我的理解 SpringBoot是Sp…

损失函数——交叉熵损失(Cross-entropy loss)

交叉熵损失(Cross-entropy loss)是深度学习中常用的一种损失函数,通常用于分类问题。它衡量了模型预测结果与实际结果之间的差距,是优化模型参数的关键指标之一。以下是交叉熵损失的详细介绍。 假设我们有一个分类问题&#xff0…

基于深度学习的高精度山羊检测识别系统(PyTorch+Pyside6+YOLOv5模型)

摘要:基于深度学习的高精度山羊检测识别系统可用于日常生活中或野外来检测与定位山羊目标,利用深度学习算法可实现图片、视频、摄像头等方式的山羊目标检测识别,另外支持结果可视化与图片或视频检测结果的导出。本系统采用YOLOv5目标检测模型…

elementUI中<el-select>下拉框选项过多的页面优化方案——多列选择

效果展示(多列可以配置) 一、icon下拉框的多列选择: 二、常规、通用下拉框的多列选择: 【注】第二种常规、通用下拉框的多列选择,是在第一种的前端代码上删除几行代码就行(把icon显示标签删去),所以下面着重…

陕西省养老服务人才培训基地申报条件范围、认定材料流程

今天为大家整理了陕西省养老服务人才培训基地申报条件范围、奖励措施等内容,感兴趣的朋友们可以了解一下! 如果想要申报西安市、宝鸡市、铜川市、咸阳市、渭南市、延安市、汉中市、榆林市、安康市、商洛市的项目政策,详情见下图 目标任务 陕…

Games104现代游戏引擎学习笔记11

胶囊:两层。 内层:真正碰撞的层级 外层:类似保护膜,防止离别的东西太近,高速移动时卡进物体。另一个作用是防止过于贴近摄像机的进平面,看到墙背后的物体 朝墙移动时,实际往往并不是撞击&#…

Java程序设计入门教程-- switch选择语句

switch选择语句 情形 虽然if…else语句通过嵌套可以处理多分支的情况,但分支不宜太多,在Java语言中,提供了switch语句可以直接、高效地处理多分支选择的情况。 格式 switch (表达式) { case 常量表达式1&#x…

EclipseCDT远程交叉编译远程单步调试基于makefile例程(实测有效)

文章目录 前言:1. 新建工程2. 远程编译环境配置2.1 下载sshfs并挂载目录2.2 Debug配置2.3安装EclipseCDT的远程插件2.4 拷贝gdbserver 3. 调试总结: 前言: 之前写过一篇VSCode远程调试linux,当时是把程序以及代码通过远程的方式,…

pycharm内置Git操作失败的原因

文章目录 问题简介解决方案DNS缓存机制知识的自我理解 问题简介 最近在pycharm中进行代码改动递交的时候,总是出现了连接超时或者推送被rejected的情况,本以为是开了代理导致的,但是关闭后还是推送失败,于是上网查了以后&#xf…

查看MySQL服务器是否启用了SSL连接,并且查看ssl证书是否存在

文章目录 一、查看MySQL服务器是否启用了SSL连接 1.登录MySQL服务器 2.查看SSL配置 二、查看证书是否存在 前言 查看MySQL服务器是否启用了SSL连接,并且查看ssl证书是否存在 一、查看MySQL服务器是否启用了SSL连接 1.登录MySQL服务器 在Linux终端中&#xf…

【Windows驱动篇】解决Windows驱动更新导致AMD Software软件无法正常启动问题

【Windows驱动篇】解决Windows驱动更新导致AMD Software软件无法正常启动问题 【操作前先备份好电脑数据!!!设置系统还原点等,防止系统出现问题!!!谨慎请操作!】 【操作前先备份好…

Windows本地提权 · 上篇

目录 at 命令提权 sc 命令提权 ps 命令提权 利用的是windows的特性,权限继承,命令或者服务创建调用的时候会以system权限调用,那么这个命令或者服务的权限也是system。 进程迁移注入提权 pinjector进程注入 MSF进程注入 令牌窃取提权…

chatgpt赋能python:Python中日期转换:从字符串到日期对象

Python中日期转换:从字符串到日期对象 作为一个经验丰富的Python工程师,日期转换在我的日常编码工作中经常遇到。Python提供了一些内置函数和模块,可以将字符串转换为日期对象或将日期对象格式化为特定的字符串。本篇文章将带您深入了解Pyth…

chatgpt赋能python:Python中的并运算:介绍及应用

Python中的并运算:介绍及应用 Python是一种功能强大且易于使用的编程语言,它的灵活性使得我们可以应用各种算法和数据结构进行处理。其中,位运算是Python中非常棒的特性之一,而其中又有一个重要的运算符——并运算。 什么是并运…