Kotlin 抛弃了 C 风格 switch,引入了 when 语法,这有点类似于 Haskell 风格的模式匹配。

fun fizzbuzz(n: Int): String {

return when {

n % 15 == 0 -> “FizzBuzz”

n % 3 == 0 -> “Fizz”

n % 5 == 0 -> “Buzz”

else -> n.toString()

}

}

fun main() {

for (i in 1…100) {

println(fizzbuzz(i))

}

}

统一码


由于 Kotlin 在底层基本上就是 Java,它仍然不能在基本平面之外正确处理 Unicode,所以最后一个答案是错误的:

fun main() {

println(“Hello”.length)

println(“Źółw”.length)

println(“💩”.length)

}

输出

5

4

2

数据类


Java 使得处理几乎任何类型的数据都变得非常乏味。每个简单的数据类都需要显式的构造函数、getter、setter、hashcode 和 equals。你甚至不能使用==, 你需要运行.equals(),但如果其中一方为空,那将真的崩溃,所以你需要先对双方进行空检查,然后.equals()。基本数据操作的样板数量太荒谬了。

Kotlin 避免了几乎所有这些废话:

data class Point(val x: Double, val y: Double) {

fun length() = Math.sqrt(x * x + y * y)

}

fun main() {

val a = listOf(1, 2, 3)

val b = listOf(1, 2, 3)

val c = Point(30.0, 40.0)

val d = Point(30.0, 40.0)

println(a == b)

println(c == d)

println(null == d)

println(“len of ${c} is ${c.length()}”)

}

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img



既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Python开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注Python)
img

在这里插入图片描述

感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的:

① 2000多本Python电子书(主流和经典的书籍应该都有了)

② Python标准库资料(最全中文版)

③ 项目源码(四五十个有趣且经典的练手项目及源码)

④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)

⑤ Python学习路线图(告别不入流的学习)

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
img

Python学习路线图(告别不入流的学习)

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-qP0wwq4H-1712515305439)]

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐