基础语法
备注
基础
Collie 语言区分大小写,并使用 Unicode 字符集。
注释
注释在代码中不起作用,你可以在必要处使用注释来使代码更加清晰,增加代码可阅读性。
危险
另一个方案:使用 # 注释
行注释(单行注释)
// 单行注释可以单独写一行
foo() // 也可以写在一行之后
提示
注意:为规范代码整体观感,我们强烈建议您,// 与注释之间保留一个空格
// 推荐这样写
//不推荐这样写
块注释(多行注释)
/*
* 多行注释
*/
/* 或者这样 */
/* 还可以...
这样 */
文档注释
注意
另一个方案:使用 /// 注释
/**
* 这是一个文档注释
* 可以出现在 类 或 函数 之前
*/
嵌套块注释【TODO;危险】
嵌套1层
可以在嵌套块注释中,嵌套1层块注释。
/*x/*xxx*/x*/
无限嵌套
可以在嵌套块注释中,嵌套任意多个其他注释。
/* 可以在多行注释中,
// 嵌套一个单行注释
/* 再嵌套一个多行注释,或者 /* 再 /* */ 嵌套 */ 好几个 */ */
/* 注释 /* 注释 /* 注释 /* 注释/* 注释 */ */ */ */ */ 代码 /*注释 */
注意
需要保证 /* 和 */ 前后一一配对
嵌套块注释中的单行注释【TODO;危险】
对于嵌套多行注释中的单行注释符号将被忽略。也就是说,如果一个单行注释符号 // 出现在块注释中,那么他就是
/* 这种 /* // 情况也是 */ 允许的 */
段落注释
提示
段落注释优先级高于行注释 (//) 和块注释 (/* */)
段落注释必须单独占一行,前后除空白字符(空格、Tab 制表符等)外不得包含其他内容。
注释到文件末尾
注释到文件末尾
String foo = "bar"
/...
这里可以写很多注释
甚至可以包含 // 行注释
或者 /** 块注释 */
但 Collie 不会解析这块内容,也就是说,段落注释将一直到文档结束
从文档开头都是注释
从此行之前全部都是注释
这里也是一样的,也支持 /** 块注释 */ 和 // 行注释
.../
String foo = "bar"
也可以组合使用
这是段落注释
.../
number star = 0
/...
可以跨越多行
.../
star++
/...
还可以混着用
.../
star++ /...也可以定义.../
/...
还可以定义好几个
注意
注意,段落注释不支持嵌套
不支持的写法
❌ 错误示范
/*
/...
*/
因为段落注释优先级高于块注释,所以 */ 结束符将被忽略
语法规则
标识符
标识符由字母、数字和下划线组成,不能以数字开头。
关键字
TODO
Collie 语言有以下关键字:var, function, if, else, for, while 等。
声明
变量声明
你可以使用以下几种方式声明 Collie 变量
显式指定类型
number num = 1
自动推断类型
var anotherNum = 1
提示
自动推断类型是一个 Collie 语法糖
变量作用域【TODO】
变量有如下作用域,每个变量都会且仅会是其中之一。
- 全局:作为类的成员变量。
- 内部:在当前代码块作用域下定义的变量。