<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>5.1 基础语法 on 编程那些事儿</title><link>https://before80.github.io/prgms/Kotlin/languageguide/5.1-Basicsyntax/</link><description>Recent content in 5.1 基础语法 on 编程那些事儿</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Sun, 13 Sep 2026 18:20:56 +0800</lastBuildDate><atom:link href="https://before80.github.io/prgms/Kotlin/languageguide/5.1-Basicsyntax/index.xml" rel="self" type="application/rss+xml"/><item><title>5.1.1 基础语法概览</title><link>https://before80.github.io/prgms/Kotlin/languageguide/5.1-Basicsyntax/5.1.1-BasicSyntax/</link><pubDate>Sun, 13 Sep 2026 08:50:47 +0800</pubDate><guid>https://before80.github.io/prgms/Kotlin/languageguide/5.1-Basicsyntax/5.1.1-BasicSyntax/</guid><description>&lt;blockquote&gt;
&lt;p&gt;原文链接: &lt;a href="https://kotlinlang.org/docs/basic-syntax.html"&gt;https://kotlinlang.org/docs/basic-syntax.html&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h1 id="511-基础语法概览"&gt;5.1.1 基础语法概览&lt;/h1&gt;
&lt;p&gt;这里汇集了一些基础语法元素及示例。每一节的末尾都会给出指向相关主题详细说明的链接。&lt;/p&gt;
&lt;p&gt;你也可以通过 JetBrains Academy 的免费课程 &lt;a href="https://hyperskill.org/tracks?category=4&amp;amp;utm_source=jbkotlin_hs&amp;amp;utm_medium=referral&amp;amp;utm_campaign=kotlinlang-docs&amp;amp;utm_content=button_1&amp;amp;utm_term=22.03.23"&gt;Kotlin Core track&lt;/a&gt; 学习 Kotlin 的全部要点。&lt;/p&gt;</description></item><item><title>5.1.2 关键字与运算符</title><link>https://before80.github.io/prgms/Kotlin/languageguide/5.1-Basicsyntax/5.1.2-KeywordReference/</link><pubDate>Sun, 13 Sep 2026 08:50:47 +0800</pubDate><guid>https://before80.github.io/prgms/Kotlin/languageguide/5.1-Basicsyntax/5.1.2-KeywordReference/</guid><description>&lt;blockquote&gt;
&lt;p&gt;原文链接: &lt;a href="https://kotlinlang.org/docs/keyword-reference.html"&gt;https://kotlinlang.org/docs/keyword-reference.html&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h1 id="512-关键字与运算符"&gt;5.1.2 关键字与运算符&lt;/h1&gt;
&lt;h2 id="hard-keywords"&gt;硬关键字&lt;/h2&gt;
&lt;p&gt;以下词元始终被解释为关键字，不能用作标识符：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;as&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;用于&lt;a href="../../5.4-Types/5.4.8-Typecasts/#unsafe-cast-operator"&gt;类型转换&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;指定&lt;a href="../5.1.3-Packages/#imports"&gt;导入的别名&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;as?&lt;/code&gt; 用于&lt;a href="../../5.4-Types/5.4.8-Typecasts/#unsafe-cast-operator"&gt;安全的类型转换&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;break&lt;/code&gt; &lt;a href="../../5.5-Controlflow/5.5.2-Returns/"&gt;终止循环的执行&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;class&lt;/code&gt; 声明一个&lt;a href="../../5.8-Classesandinterfaces/5.8.1-Classes/"&gt;类&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;continue&lt;/code&gt; &lt;a href="../../5.5-Controlflow/5.5.2-Returns/"&gt;继续执行最近的外层循环的下一步&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;do&lt;/code&gt; 开始一个 &lt;a href="../../5.5-Controlflow/5.5.1-ControlFlow/#while-loops"&gt;do/while 循环&lt;/a&gt;（带后置条件的循环）。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;else&lt;/code&gt; 定义 &lt;a href="../../5.5-Controlflow/5.5.1-ControlFlow/#if-expression"&gt;if 表达式&lt;/a&gt;在条件为假时执行的分支。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;false&lt;/code&gt; 指定&lt;a href="../../5.4-Types/5.4.4-Booleans/"&gt;布尔类型&lt;/a&gt;的“假”值。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;for&lt;/code&gt; 开始一个 &lt;a href="../../5.5-Controlflow/5.5.1-ControlFlow/#for-loops"&gt;for 循环&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;fun&lt;/code&gt; 声明一个&lt;a href="../../5.7-Functions/5.7.1-Functions/"&gt;函数&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;if&lt;/code&gt; 开始一个 &lt;a href="../../5.5-Controlflow/5.5.1-ControlFlow/#if-expression"&gt;if 表达式&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;in&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;在 &lt;a href="../../5.5-Controlflow/5.5.1-ControlFlow/#for-loops"&gt;for 循环&lt;/a&gt;中指定被迭代的对象。&lt;/li&gt;
&lt;li&gt;作为中缀运算符使用，用于检查某个值是否属于&lt;a href="../../../libraryguides/9.1-Standardlibrary/9.1.1-Collections/9.1.1.11-Ranges/"&gt;区间&lt;/a&gt;、集合，或其他&lt;a href="../../5.7-Functions/5.7.6-OperatorOverloading/#in-operator"&gt;定义了 contains 方法&lt;/a&gt;的实体。&lt;/li&gt;
&lt;li&gt;在 &lt;a href="../../5.5-Controlflow/5.5.1-ControlFlow/#when-expressions-and-statements"&gt;when 表达式&lt;/a&gt;中用于同样的目的。&lt;/li&gt;
&lt;li&gt;把类型参数标记为&lt;a href="../../5.11-Generics/#declaration-site-variance"&gt;逆变&lt;/a&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;!in&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;作为运算符使用，用于检查某个值是否&lt;strong&gt;不&lt;/strong&gt;属于&lt;a href="../../../libraryguides/9.1-Standardlibrary/9.1.1-Collections/9.1.1.11-Ranges/"&gt;区间&lt;/a&gt;、集合，或其他&lt;a href="../../5.7-Functions/5.7.6-OperatorOverloading/#in-operator"&gt;定义了 contains 方法&lt;/a&gt;的实体。&lt;/li&gt;
&lt;li&gt;在 &lt;a href="../../5.5-Controlflow/5.5.1-ControlFlow/#when-expressions-and-statements"&gt;when 表达式&lt;/a&gt;中用于同样的目的。&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;interface&lt;/code&gt; 声明一个&lt;a href="../../5.8-Classesandinterfaces/5.8.4-Interfaces/"&gt;接口&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;is&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;检查&lt;a href="../../5.4-Types/5.4.8-Typecasts/#is-and-is-operators"&gt;某个值是否具有某种类型&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;在 &lt;a href="../../5.5-Controlflow/5.5.1-ControlFlow/#when-expressions-and-statements"&gt;when 表达式&lt;/a&gt;中用于同样的目的。&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;!is&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;检查&lt;a href="../../5.4-Types/5.4.8-Typecasts/#is-and-is-operators"&gt;某个值是否不具有某种类型&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;在 &lt;a href="../../5.5-Controlflow/5.5.1-ControlFlow/#when-expressions-and-statements"&gt;when 表达式&lt;/a&gt;中用于同样的目的。&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;null&lt;/code&gt; 是一个常量，表示不指向任何对象的对象引用。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;object&lt;/code&gt; &lt;a href="../../5.8-Classesandinterfaces/5.8.7-ObjectDeclarations/"&gt;同时声明一个类及其实例&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;package&lt;/code&gt; 指定&lt;a href="../5.1.3-Packages/"&gt;当前文件所属的包&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;return&lt;/code&gt; &lt;a href="../../5.5-Controlflow/5.5.2-Returns/"&gt;从最近的外层函数或匿名函数返回&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;super&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="../../5.8-Classesandinterfaces/5.8.6-Inheritance/#calling-the-superclass-implementation"&gt;引用方法或属性的父类实现&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;a href="../../5.8-Classesandinterfaces/5.8.1-Classes/#inheritance"&gt;从次级构造器调用父类构造器&lt;/a&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;this&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;引用&lt;a href="../../5.8-Classesandinterfaces/5.8.8-ThisExpressions/"&gt;当前接收者&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;a href="../../5.8-Classesandinterfaces/5.8.1-Classes/#constructors-and-initializer-blocks"&gt;从次级构造器调用同一类的另一个构造器&lt;/a&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;throw&lt;/code&gt; &lt;a href="../../5.6-Exceptions/"&gt;抛出异常&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;true&lt;/code&gt; 指定&lt;a href="../../5.4-Types/5.4.4-Booleans/"&gt;布尔类型&lt;/a&gt;的“真”值。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;try&lt;/code&gt; &lt;a href="../../5.6-Exceptions/"&gt;开始一个异常处理块&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;typealias&lt;/code&gt; 声明一个&lt;a href="../../5.4-Types/5.4.9-TypeAliases/"&gt;类型别名&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;typeof&lt;/code&gt; 保留供将来使用。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;val&lt;/code&gt; 声明一个只读&lt;a href="../../5.8-Classesandinterfaces/5.8.10-Properties/5.8.10.1-Properties/"&gt;属性&lt;/a&gt;或&lt;a href="../5.1.1-BasicSyntax/#variables"&gt;局部变量&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;var&lt;/code&gt; 声明一个可变的&lt;a href="../../5.8-Classesandinterfaces/5.8.10-Properties/5.8.10.1-Properties/"&gt;属性&lt;/a&gt;或&lt;a href="../5.1.1-BasicSyntax/#variables"&gt;局部变量&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;when&lt;/code&gt; 开始一个 &lt;a href="../../5.5-Controlflow/5.5.1-ControlFlow/#when-expressions-and-statements"&gt;when 表达式&lt;/a&gt;（执行给定的某个分支）。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;while&lt;/code&gt; 开始一个 &lt;a href="../../5.5-Controlflow/5.5.1-ControlFlow/#while-loops"&gt;while 循环&lt;/a&gt;（带前置条件的循环）。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="soft-keywords"&gt;软关键字&lt;/h2&gt;
&lt;p&gt;以下词元在其适用的上下文中充当关键字，在其他上下文中则可以用作标识符：&lt;/p&gt;</description></item><item><title>5.1.3 包与导入</title><link>https://before80.github.io/prgms/Kotlin/languageguide/5.1-Basicsyntax/5.1.3-Packages/</link><pubDate>Sun, 13 Sep 2026 08:50:47 +0800</pubDate><guid>https://before80.github.io/prgms/Kotlin/languageguide/5.1-Basicsyntax/5.1.3-Packages/</guid><description>&lt;blockquote&gt;
&lt;p&gt;原文链接: &lt;a href="https://kotlinlang.org/docs/packages.html"&gt;https://kotlinlang.org/docs/packages.html&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h1 id="513-包与导入"&gt;5.1.3 包与导入&lt;/h1&gt;
&lt;p&gt;在 Kotlin 项目中，代码通过包和导入来组织：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;包&lt;/strong&gt;是一个或多个 Kotlin 文件的容器。文件通过 &lt;code&gt;package&lt;/code&gt; 头部与包关联。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;导入&lt;/strong&gt;是一条指令，它让其他包中的实体在当前文件中可用。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="package-headers"&gt;包头部&lt;/h2&gt;
&lt;p&gt;源文件可以以包头部开头：&lt;/p&gt;</description></item><item><title>5.1.4 注解</title><link>https://before80.github.io/prgms/Kotlin/languageguide/5.1-Basicsyntax/5.1.4-Annotations/</link><pubDate>Sun, 13 Sep 2026 08:50:47 +0800</pubDate><guid>https://before80.github.io/prgms/Kotlin/languageguide/5.1-Basicsyntax/5.1.4-Annotations/</guid><description>&lt;blockquote&gt;
&lt;p&gt;原文链接: &lt;a href="https://kotlinlang.org/docs/annotations.html"&gt;https://kotlinlang.org/docs/annotations.html&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h1 id="514-注解"&gt;5.1.4 注解&lt;/h1&gt;
&lt;p&gt;注解是可以用来为代码元素附加元数据的标签。工具和框架会在编译期和运行期处理这些元数据，并据此执行不同的操作。&lt;/p&gt;
&lt;p&gt;你可以用注解来简化和自动化常见任务，例如生成样板代码、强制编码规范或编写文档。&lt;/p&gt;</description></item><item><title>5.1.5 可见性修饰符</title><link>https://before80.github.io/prgms/Kotlin/languageguide/5.1-Basicsyntax/5.1.5-VisibilityModifiers/</link><pubDate>Sun, 13 Sep 2026 08:50:47 +0800</pubDate><guid>https://before80.github.io/prgms/Kotlin/languageguide/5.1-Basicsyntax/5.1.5-VisibilityModifiers/</guid><description>&lt;blockquote&gt;
&lt;p&gt;原文链接: &lt;a href="https://kotlinlang.org/docs/visibility-modifiers.html"&gt;https://kotlinlang.org/docs/visibility-modifiers.html&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h1 id="515-可见性修饰符"&gt;5.1.5 可见性修饰符&lt;/h1&gt;
&lt;p&gt;类、对象、接口、构造器和函数，以及属性和它们的 setter，都可以有&lt;em&gt;可见性修饰符&lt;/em&gt;。getter 的可见性始终与其属性相同。&lt;/p&gt;</description></item></channel></rss>