语法糖
语法糖(Syntactic sugar),也译为糖衣语法,是由英国计算机科学家彼得·兰丁发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能没有影响,但是更方便程序员使用。语法糖让程序更加简洁,有更高的可读性。
语言处理器,包括编译器和静态分析器,在处理的过程中,首先把“加糖”的结构变成基本的结构,这个过程叫做“去糖”。
举个最简单的例子:
这是我们很熟悉的 for 循环:
for (var i = 0; i < 5; i++){
...
}
然后这是等价的 while 循环:
var i=0;
while (i < 5){
...
i++;
}
这里就可以认为 for 就是一个语法糖,虽然用 while 也能实现,但是我们更倾向于用更加简单的 for。
所以简单说:语法糖就是为了避免 coder 出现错误并提高效率的语法层面的一种优雅的解决方案。
应用
在 C# 中,貌似广泛的使用了语法糖。
在 Java8 中的 Lambda 表达式其实也是一种语法糖,更不用说 Android 开发首推的 Kotlin 中就有大量的语法糖,本质还是基于 JVM