返回

Flutter 中 const 使用小记

IOS

const 小部件

const 小部件是不能改变状态的小部件。这意味着 const 小部件一旦创建,就不能再改变其内部状态。const 小部件的优点是性能更好,因为它们不需要在每次重新构建时重新创建。const 小部件的缺点是它们不能改变状态,因此不能用于构建交互式小部件。

// 创建一个 const 小部件
const MyButton = TextButton(
  onPressed: () {
    // 不能改变状态
  },
  child: Text('点我'),
);

const 方法

const 方法是不能改变状态的方法。这意味着 const 方法一旦被调用,就不能再改变其内部状态。const 方法的优点是性能更好,因为它们不需要在每次调用时重新创建。const 方法的缺点是它们不能改变状态,因此不能用于构建交互式方法。

// 创建一个 const 方法
const int add(int a, int b) {
  // 不能改变状态
  return a + b;
}

const 变量

const 变量是不能改变值的变量。这意味着 const 变量一旦被声明,就不能再改变其值。const 变量的优点是性能更好,因为它们不需要在每次重新分配时重新创建。const 变量的缺点是它们不能改变值,因此不能用于构建可变变量。

// 创建一个 const 变量
const int myAge = 20;

const 的优点和缺点

使用 const 可以提高程序的性能和效率,并减少内存使用。但是,const 关键字也有其缺点,例如它不能用于构建交互式小部件、方法和变量。

优点:

  • 性能更好
  • 效率更高
  • 内存使用更少

缺点:

  • 不能用于构建交互式小部件、方法和变量
  • 不能改变状态
  • 不能改变值

结论

const 关键字是 Dart 语言中用于声明常量的关键字。在 Flutter 中,const 关键字可以用来声明常量小部件、常量方法和常量变量。使用 const 关键字可以提高程序的性能和效率,并减少内存使用。但是,const 关键字也有其缺点,例如它不能用于构建交互式小部件、方法和变量。在使用 const 关键字时,需要权衡其优点和缺点,以确定是否适合使用。