当前位置: 首页 > news >正文

Kotlin与Java写法的变更

目录

获取类的Java Class属性

类型检查

for循环

switch语句

if判断


获取类的Java Class属性

//Java
Intent intent = new Intent(this, MainActivity.class);//Kotlin
val intent = Intent(this, MainActivity::class.java)

类型检查

//Java
apple instanceof Fruit
!(apple instanceof Fruit)//Kotlin
apple is Fruit
apple !is Fruit

for循环

//Java
List<String> list = new ArrayList<>();
for (int i = 0; i < list.size(); i++) {//do something
}//Kotlin 一般写法
for (element in sList) {//do something
}//Kotlin 不需要下标
list.forEach {//do something
}//Kotlin 需要下标
list.forEachIndexed { element, index ->//do something
}

switch语句

java

        int status = 0;int timeout = 0;switch(status){case STATUS_1:timeout = 100;break;case STATUS_2:timeout = 200;break;case STATUS_3:timeout = 300;break;default:timeout = 500;break;}

在Kotlin中,switch语句正式退出了历史舞台,取而代之的是更为强大的when表达式。注意语句(statement)和表达式(expression)的区别。通俗来讲,他们最大的区别是语句没有值,而表达式有值。因此在Kotlin中可以这样用:

val status = 0
fun getTime(): Int = when (status) {1 -> 1002 -> 2003 -> 300else -> 500
}

if判断

在Kotlin中,if变成了表达式,等同于 Java中三目运算符的替代写法:

fun getStatus(score:Int) = if(score >85) "优秀" else "其他"

相关文章:

Kotlin与Java写法的变更

目录 获取类的Java Class属性 类型检查 for循环 switch语句 if判断 获取类的Java Class属性 //Java Intent intent new Intent(this, MainActivity.class);//Kotlin val intent Intent(this, MainActivity::class.java) 类型检查 //Java apple instanceof Fruit !(app…...

京东数据软件系统:京东销量和销额数据在哪里看?

京东平台店铺众多&#xff0c;行业同行也数不胜数&#xff0c;若想要在平台中更好的运营店铺&#xff0c;品牌需要做好数据分析。下面结合鲸参谋电商数据分析平台这一数据分析工具&#xff0c;我们来看一看品牌在做数据分析时需要注重哪些数据维度。 *行业数据 京东商家通过鲸…...

美观且功能丰富的控制台:5个.Net开源项目

今天一起盘点下&#xff0c;9月份推荐的5个.Net开源项目&#xff08;点击标题查看详情&#xff09;。 1、FTP开源库 FluentFTP是一个基于.Net开发的&#xff0c;可用于FTP和FTPS文件传输。该项目优化了速度&#xff0c;并提供简单易用的API&#xff0c;让开发人员可以快速地集…...

深度学习模型基于Python+TensorFlow+Django的垃圾识别系统

欢迎大家点赞、收藏、关注、评论啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 要使用Python、TensorFlow和Django构建一个垃圾识别系统&#xff0c;您可以按照以下步骤进行操作&#xff1a; 安装…...

​ArcGIS Pro怎么生成山顶点

山顶点是指山脉、山丘或山脉系统中最高的地点&#xff0c;通常是山的最高峰&#xff0c;这是山地地貌中的最高点&#xff0c;往往是山脉的标志性特征之一&#xff0c;这里为大家介绍一下如何使用ArcGIS Pro获取山顶点&#xff0c;希望能对你有所帮助。 数据来源 本教程所使用…...

Anolis 8.6 安装 Drawio

Anolis 8.6 安装 Drawio 22.1.0 一.RPM版&#xff08;不建议&#xff09;二.WAR 包部署 一.RPM版&#xff08;不建议&#xff09; Draw RPM 包下载链接 RPM 包直接基于Linux图形化能力部署&#xff0c;服务器类型的Linux系统启动RPM包安装的Draw可能比较复杂 系统版本 ## 1.…...

AI图像生成模型LCMs: 四个步骤就能快速生成高质量图像的新方法

在最新的AI模型和研究领域&#xff0c;一种名为Latent Consistency Models&#xff08;LCMs&#xff09;的新技术正迅速推动文本到图像人工智能的发展。与传统的Latent Diffusion Models(LDMs)相比&#xff0c;LCMs在生成详细且富有创意的图像方面同样出色&#xff0c;但仅需1-…...

成都瀚网科技有限公司抖音带货正规

随着互联网的蓬勃发展&#xff0c;越来越多的公司开始利用网络平台进行产品销售。其中&#xff0c;抖音作为一款广受欢迎的短视频平台&#xff0c;已经成为众多商家眼中的“香饽饽”。在这场电商狂欢中&#xff0c;成都瀚网科技有限公司&#xff08;以下简称“瀚网科技”&#…...

php 8 注解的实际应用

前言 学过java的同学应该都知道注解的作用&#xff0c;但是在php中注解有什么用呢&#xff1f;我的理解就是美化代码和便于维护一些类的设计。 说明 我们先设计一个类&#xff0c;声明人类的性别 <?php class Sex {//男人const MAN 1;//女人const WIFE 2;//未知const…...

【数据结构】树与二叉树(十三):递归复制二叉树(算法CopyTree)

文章目录 5.2.1 二叉树二叉树性质引理5.1&#xff1a;二叉树中层数为i的结点至多有 2 i 2^i 2i个&#xff0c;其中 i ≥ 0 i \geq 0 i≥0。引理5.2&#xff1a;高度为k的二叉树中至多有 2 k 1 − 1 2^{k1}-1 2k1−1个结点&#xff0c;其中 k ≥ 0 k \geq 0 k≥0。引理5.3&…...

相机突然断电,保存的DAT视频文件如何打开

3-6 本文主要解决因相机突然断电导致拍摄的视频文件打不开的问题。 在平常使用相机拍摄视频&#xff0c;比如使用佳能相机拍摄视频的时候&#xff0c;如果电池突然断电&#xff0c;就非常有可能会导致视频没来得及保存而损坏的情况&#xff0c;比如会产生下图中的这种DAT文件…...

[西湖论剑 2022]real_ez_node

文章目录 前置知识EJS模板注入&#xff08;CVE-2022-29078&#xff09;原型链污染漏洞 &#xff08;CVE-2021-25928&#xff09;HTTP响应拆分攻击&#xff08;CRLF&#xff09; 解题过程代码审计构造payload 前置知识 EJS模板注入&#xff08;CVE-2022-29078&#xff09; EJS…...

如何正确使用GPT工具

引言 在快速发展的数字时代&#xff0c;人工智能&#xff08;AI&#xff09;已成为科研领域的一个不可或缺的工具。特别是像ChatGPT这样的AI聊天机器人&#xff0c;它通过高效的语言模型和深度学习算法&#xff0c;为科研工作者提供了前所未有的辅助。从文献搜索到数据分析&…...

Kotlin Multiplatform稳定版本发布:加速跨平台开发的新里程碑

Kotlin Multiplatform稳定版本发布&#xff1a;加速跨平台开发的新里程碑 引言 在最新的消息中&#xff0c;JetBrains团队宣布Kotlin Multiplatform&#xff08;KMP&#xff09;将于2023年10月稳定发布。这一消息对于广大开发者来说毫无疑问是一个令人振奋的消息。KMP的正式生…...

Paas-云管理

云管理平台&#xff08;Cloud Management Platform&#xff0c;CMP&#xff09;是由Gartner最先提出的企业云战略中的一种产品形态。Gartner对云管理平台&#xff08;CMP&#xff09;的定义是一种管理公有云、私有云和混合云环境的整合性产品。 什么是云管理平台 云管理平台&a…...

http-server安装使用

前段时间给电脑重装了系统&#xff0c;很多东西都没了&#xff0c;今天想在浏览器打开一个本地的html文件&#xff0c;发现电脑上没有http-server&#xff0c;于是装了一个&#xff0c;并且记录下安装过程 1、安装 nodejs&#xff0c;但如果你电脑上有&#xff0c;就无需下载 …...

【CSDN 每日一练 ★☆☆】【位运算】只出现一次的数字

【CSDN 每日一练 ★☆☆】【位运算】只出现一次的数字 题目 给定一个非空整数数组&#xff0c;除了某个元素只出现一次以外&#xff0c;其余每个元素均出现两次。找出那个只出现了一次的元素。 说明&#xff1a; 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实…...

Spring的注入

目录 一、Spring的概念 二、各种数据类型的注入 &#xff08;1&#xff09;studentService &#xff08;2&#xff09;applicationContext.xml&#xff08;Sring核心配置文件&#xff09; &#xff08;3&#xff09;测试 三、注入null或者empty类型的数据 &#xff08;1…...

Linux-Docker的基础命令和部署code-server

1.安装docker 1.安装需要的安装包 yum install -y yum-utils2.设置镜像仓库 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo3.安装docker yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin do…...

微信小程序授权登陆 getUserProfile

目录 前言 步骤&#xff1a; 示例代码: 获取用户信息的接口变化历史: 注意事项&#xff1a; 前言 在微信小程序中&#xff0c;你可以使用 getUserProfile 接口来获取用户的个人信息&#xff0c;并进行授权登录。以下是使用 getUserProfile 的步骤&#xff1a; 小程序发了…...

从电压比较器到超级电容:DyingGasp掉电检测电路的设计与调优

1. DyingGasp功能的核心价值与应用场景 想象一下你正在视频会议中突然断电&#xff0c;对方只会看到你突然消失的画面&#xff0c;完全不知道发生了什么。而在通信设备的世界里&#xff0c;这种"突然失联"会给整个系统带来更多麻烦。DyingGasp&#xff08;临终喘息&a…...

PHP表单开发效率提升370%的秘密:基于Swoole+Vue3的低代码引擎架构拆解(含性能压测对比数据)

第一章&#xff1a;PHP低代码表单引擎开发概述 PHP低代码表单引擎是一种面向业务人员与开发者协同的轻量级开发范式&#xff0c;它将表单结构定义、校验逻辑、数据绑定与渲染流程抽象为可配置、可复用的组件体系&#xff0c;显著降低CRUD类表单应用的构建门槛。该引擎不依赖重型…...

教你一个识别合作方潜在风险的小技巧

在如今复杂多变的商业环境中&#xff0c;企业间的合作日益频繁。然而&#xff0c;互利的商业关系中往往隐藏着潜在风险。因此&#xff0c;掌握合作方的关键信息并避开风险&#xff0c;对于经营者至关重要。今天为大家介绍几个实用小技巧&#xff0c;教您如何通过风鸟快速识别一…...

DDrawCompat深度解析:让经典DirectX游戏在现代Windows重焕生机

DDrawCompat深度解析&#xff1a;让经典DirectX游戏在现代Windows重焕生机 【免费下载链接】DDrawCompat DirectDraw and Direct3D 1-7 compatibility, performance and visual enhancements for Windows Vista, 7, 8, 10 and 11 项目地址: https://gitcode.com/gh_mirrors/d…...

IoT设备渗透测试实战:从命令注入到流量监控的完整流程(附避坑指南)

IoT设备渗透测试实战&#xff1a;从命令注入到流量监控的完整流程&#xff08;附避坑指南&#xff09; 1. IoT渗透测试的特殊性 IoT设备的渗透测试与传统PC环境存在显著差异&#xff0c;这些差异直接影响着测试策略的选择和工具的使用。首先&#xff0c;IoT设备通常运行精简版的…...

基于CANopen协议,实现机器人500-1000Hz高频控制(附实操实例) (1)

机器人控制:基于CANopen协议的高频控制(大于500Hz)(附实操实例) 在机器人控制领域,高频控制(500-1000Hz)是实现高精度轨迹跟踪、快速动态响应的核心需求——无论是协作机器人的柔性交互、工业机械臂的高速分拣,还是AGV的精准定位,都需要控制器与执行器(伺服驱动器、…...

彩言发票验真截图工具:发票验真截图效率提升10倍的实用神器

验真截图展示 在企业财务日常工作中&#xff0c;发票验真是最基础却最耗时的环节之一。纸质增值税专用发票、全电发票、真伪核对、批量处理……传统手动查验不仅效率低&#xff0c;还容易出错。为了测试推广高效工具&#xff0c;我们上手实测了彩言发票验真工具。结果显示&…...

novelWriter国际化支持:如何为多语言写作优化设置

novelWriter国际化支持&#xff1a;如何为多语言写作优化设置 【免费下载链接】novelWriter novelWriter is an open source plain text editor designed for writing novels. 项目地址: https://gitcode.com/gh_mirrors/no/novelWriter novelWriter是一款专为小说创作设…...

seo收录查询工具如何提高网站的关键词排名

SEO收录查询工具如何提高网站的关键词排名 在当前竞争激烈的互联网环境中&#xff0c;网站的SEO排名直接影响到网站的流量和收入。而关键词排名作为SEO的重要组成部分&#xff0c;如何通过SEO收录查询工具提高网站的关键词排名&#xff0c;是每一个网站运营者都需要关注的问题…...

Qwen3.5-9B视觉增强:OpenClaw自动处理截图中的文字

Qwen3.5-9B视觉增强&#xff1a;OpenClaw自动处理截图中的文字 1. 为什么需要自动处理截图文字 上周我需要整理一份移动端产品调研报告&#xff0c;手机截屏了二十多个竞品界面。当我把这些截图传到电脑上准备整理时&#xff0c;发现两个致命问题&#xff1a;一是部分截图文字…...