编程语言探索之旅
1. 主流编程语言特性
1.1 C
C# 在很多方面领先于 Java,支持一些 Java 后来才采用、尚未采用或可能永远不会采用的特性,比如可空类型、具体化泛型类型、部分方法、属性、函数式编程支持(如 lambda 表达式)、扩展方法、匿名类型和字符串插值等。
它具备众多企业级语言所需的特性,包括安全特性,如静态类型检查、边界检查、不安全内存操作隔离,以及禁止某些易出错的变量遮蔽形式。C# 禁止编译未赋值局部变量的代码,但保证某些其他变量(包括实例变量)的初始化。此外,程序员还能享受类型推断、属性(如 Swift 那样封装 getter 和 setter)、命名空间、列表推导式、委托、运算符重载和元编程能力等便利。
下面是一段使用 System.Linq 命名空间方法的代码示例:
lines
.SelectMany(line => wordRegex.Matches(line).Cast<Match>())
.Select(x => x.Value.ToLower())
.GroupBy(x => x)
.OrderBy(x => x.Key)
.ToList()
.ForEach(p => Console.WriteLine("{0} {1}", p.Key, p.Count()));
1.2 Scala
Scala(可扩展语言)由 Martin Odersky 于 21 世纪初在洛桑联邦理工学院创建,是一种面向 Java 平台的函数式、面向对象语言,可
超级会员免费看
订阅专栏 解锁全文
1102

被折叠的 条评论
为什么被折叠?



