晚上的空教室补课:名字赋予存在之变数 Variable

「今天要正式开始补课了。」诗忆相当紧张,趁着午休时间,拿着课堂讲义在图书馆试图预习,可惜一个字也读不进去,反倒带来大脑缺氧,昏昏欲睡的副作用。当然,也可能是因为图书馆内的温度相当舒适、也非常安静的缘故。

『小诗?小诗?』梦里似乎听到有人呼唤自己,诗忆挣扎着醒来。

「原来是手机在响啊。」诗忆接起手机,听到学姐的声音瞬间清醒。「喔,是学姐。是、是,今天晚上的补课也拜托你了,好,我知道了,我会准时过去。」

晚上很快的到来,诗忆踏进陌生的教室。寝室虽然方便,毕竟还要顾虑室友,所以唯心另外找了一间空教室授课。

「诗忆学妹,今天开始正式补课,所以也会出作业给你唷,没问题吧?」唯心关心的说。

诗忆举起右手,宣誓一般的说:「是,我会尽力的。」

「那我们先从HelloWorld这个很有名的入门程序开始吧!」唯心微笑,建立了名为HelloWorld.kt的档案。

图1

「咦?没有中文版吗?」诗忆睁大眼。

「⋯⋯这个程序很有名,大家都直接用原文版的。而且,你将来踏入业界後,未来的同事可能是外国人,从现在开始习惯英文比较好唷。」唯心温柔的说。

诗忆决定从今天开始做好苦读英文的觉悟。

集中注意力後,诗忆发现了和上次不同的地方。「学姐,这次新档案选的是File而不是Class呢。」

「对呀,如果选择Class就预设以class为主体,选File的话一片空白自由发挥。话是这麽说,但这些只是IDE替开发者节省力气的样板,也可以选了Class後,再清空重写里面提供的程序码。」

图2

图3

「也因此,不可能在同一个资料夹下存在相同名字不同样板的档案唷。」唯心示范了一次错误操作。

图4

「嗯嗯。」诗忆放心了,可以依赖IDE真好。

「好了,那我现在把HelloWorld程序放进去。」唯心复制贴上准备好的程序码。

fun main() {
    println("Hello World!")
}

「就三行?」诗忆瞠目结舌。

唯心耸肩。「是呀,因为是入门程序,就这麽简单。点击main旁边的绿色三角形,程序就可以印出Hello World!字样了。」

图5

图6

「这样今天的课程就结束了?」诗忆歪头。

「你以为我特地空出晚上的时间就为了教你贴上三行程序码?」唯心用手指轻戳她额头。

「你看这程序码,有没有什麽好奇的地方?尽管问。」

「学姐,为什麽要取名main,直接用helloworld不好吗?」既然学姐都这样说了,诗忆就提了一个她颇在意的问题。

「因爲一个程序可以由很多小程序片段组成,所以必须约定程序执行入口,通称主程序main。如果改成其他名字,绿色三角形会不见,IDE也会提醒你修正名字。」

图7

「喔,那我没有其他问题了。」诗忆把刚刚得到的答案写在新笔记本上。

唯心在白板上写上英文Variable。「现在要教你变数的观念。」

「如果要你印出十行Hello World!,你会怎麽做?」唯心问。

诗忆闷声作业,教室里回荡着复制贴上的敲击声,片刻後,诗忆提交程序。

fun main() {
    println("Hello World!")
    println("Hello World!")
    println("Hello World!")
    //...省略中间重复行数
    println("Hello World!")
}

唯心看着意料中的答案,点头。「很好,现在要求你把这十行都多加一个问号呢?」

经过和刚刚相同的时间後,诗忆这次提交的程序码每行都加上问号。

fun main() {
    println("Hello World!?")
    println("Hello World!?")
    println("Hello World!?")
    //...省略中间重复行数
    println("Hello World!?")
}

「很努力了呢。只是你确定没有漏掉没改的地方吗?」

诗忆瞪大眼睛检查了十遍,没看到不对的地方,疑惑的看着唯心。

「嗯,的确没有漏掉,但是光是十行检查就很辛苦吧?但在业界里,程序码千行、万行的庞然巨物是很常见的。所以这就是变数的重要性了,可以把要印的文字用string这个名字存起来,赋予存在,我示范给你看。」唯心接手改动诗忆的程序码。

fun main() {
    val string = "Hello World!?"
    println(string)
    println(string)
    println(string)
    //...省略中间重复行数
    println(string)
}

「现在如果要再加一个问号,只要这样做。」

fun main() {
    val string = "Hello World!??"
    println(string)
    println(string)
    println(string)
    //...省略中间重复行数
    println(string)
}

「学姐好厉害唷。」看唯心只改动string等号右侧的文字就达成要求,诗忆一脸崇拜。

「还有更厉害的写法唷,不过今天就先教到这里吧。晚安,明天见。」唯心转身收拾白板。

「学姐,我帮你。」诗忆走过去想要帮忙。

「我自己整理就好。趁天色还没全黑,早点回去吧,不是还不熟悉校园吗?而且中午时候的声音听起来也很疲倦。」唯心轻推诗忆的肩膀。

「谢谢学姐,学姐晚安,明天见。」诗忆满怀感激的离开教室。


<<:  离职员工删库事件

>>:  铁人赛 Day11 -- 一定要知道的 CSS (八) -- 想要设定个文字而已有那麽难吗?

D8 - 如何用 Google Apps Script 将 Google Calendar 上的事件与更新全部列出到 Google Sheet 上?

来到了第 8 天。但一样先讲结论,如果你很急着用,可以直接使用这份 Add-On: Calendar...

[Day 22] 计算属性computed趴搭搭

嗨各位!!!又是我,那个小可爱又来了,今天要来讲的是—计算属性,如果你的模板需要加入很多逻辑运算,可...

Day 11. Hashicorp Nomad: Sidecar task

Hashicorp Nomad: Sidecar task 在Day 9. Hashicorp No...

Day20 - 【概念篇】OAuth flows: Device Code(2)

本系列文之後也会置於个人网站 光要完成这个范例就花了几乎整整一天 做完後决定...来拆篇 这第二部...

【SEO优化】12个问题会影响排名因素问题

有在操作SEO优化,总是许多seo行销公司在谈论排名因素。你知道,Google的神奇算法公式的秘密成...