1.const可以用于字段和局部变量;
readonly只能用于字段;
2.const只能为静态字段;而且不能显式声明为static,否则会报错;
readonly既可以是实例字段,也可以是静态字段;
3.const字段在所有实例中的值都相同;
readonly字段在不同实例里可以有不同的值;
4.const字段和变量只能在编译时赋值;
readonly可以在编译时和运行时(构造器或声明)赋值;
5.const无法用于数组,除非将数组初始化为null;
readonly用于数组时不会冻结数组内容,而是冻结数组实例,包括元素个数;
数组是引用类型,而const要求提供一个编译器常量,引用类型的编译器常量只有null;
如果需要数组元素也不可变,可以使用 ReadOnlyCollection 类型;