Open zqHero opened 5 years ago
看过一本书 :Flutter 技术入门和实战 中 介绍Dart是 弱语言类型。
亲测:
var demo = 0;
class MyApp2 extends StatelessWidget { @override Widget build(BuildContext context) { demo = 11; // TODO: implement build return new MaterialApp( title: "thisNavDemo", home: new Scaffold( appBar: new AppBar( title: new Text('this is demo'), ), body: new Center( child: RaisedButton( onPressed: () { print("============ $demo"); ...........................................
demo 是可以被重新赋值的,但不可以更改类型,更改类型会飘错。。。。
dart是强类型语言,没有强语言类型和弱语言类型的说法,此处强调的是类型是否可变。
使用var demo = 0 ,其实已经定义了demo是int型,dart会根据值来推断类型,所以再更改demo的类型就会报错。你可以将demo定义为dynamic, 可以实现更改类型。
之前是可选类型,这个可选类型和swift的可空类型是完全不同的概念。 2.0以后,dart变成了强类型语言
看过一本书 :Flutter 技术入门和实战 中 介绍Dart是 弱语言类型。
亲测:
var demo = 0;
class MyApp2 extends StatelessWidget { @override Widget build(BuildContext context) { demo = 11; // TODO: implement build return new MaterialApp( title: "thisNavDemo", home: new Scaffold( appBar: new AppBar( title: new Text('this is demo'), ), body: new Center( child: RaisedButton( onPressed: () { print("============ $demo"); ...........................................
demo 是可以被重新赋值的,但不可以更改类型,更改类型会飘错。。。。