Flutter之Dart基本语法学习

变量与常量

声明变量
var lll
默认值是null
dynamic 声明可以改变类型

使用final 和 const 进行修饰一个常量
例:

var number;
number = 15;
print('$number');


number = '2' //类型可变
print(number) 

final c = 30
print(c)

const d = 50
print(d)

  • const 是一个编译时常量
  • final 常量在第一次使用时被初始化
  • 类级别常量 static const PI = 3.1415

内置类型

(1) Number (数值)
(2) String (字符串)
(3) Boolean (布尔型)
(4) List (列表)
(5) Map (键值对)
(6) Runes (符号字符)
(7) Synbols (标识符)

数值型

num a = 10

数值型操作

(1)运算符:+、-、*、/、~/、%
(2)常用属性:isNaN、isEven、isOdd
(3)常用方法:round()、floor()、ceil()、toInt()、toDouble()、abs()

字符串

(1)使用单引号、双引号创建字符串
(2)使用三个引号或双引号创建多行字符串
(3)使用r创建原始raw字符串

字符串操作

(1)运算符:+ * == []
(2)差值表达式:${expression}
(3)常用属性:length isEmpty isNotEmpty
(4)常用方法:contains() subString() startsWith() endsWith() indexOf() lastIndexOf() toLowerCase() toUpperCase() trim() trimLeft() trimRight() split() replaceAll()

List与数组

var list = [1,2,3];

var list2 = new List();

var list3 = const[1, 2, 3];

常用方法
length() add() insert() remove() clear() indexOf() lastIndexOf() sort() sublist() asMap() forEach() shuffle()

    var list = ['one', 'two', 'three'];
    print(list.length);//获取长度
    list.add('four');
    print(list);
    list.remove('two');
    print(list);
    list.insert(1, 'two');
    print(list);
    print(list.indexOf('one'));
    print(list.sublist(2));
    list.forEach(print);
    list.shuffle(); //随机打乱List里元素的顺序
    print(list);

Map

Map game = {"name":"Switch", "company":"任天堂"};

Map game = const{"name":"Switch", "company":"任天堂"};

Map game = new Map();
game['name'] = "Switch";
game['company'] = 'GameBoy';

game.remove('name')
game.clear()

dynamic & Object

var name1 = ‘abc’;
Object name2 = ‘def’;
dynamic name3 = ‘hij’;

dynamic obj=‘校长’;
obj[‘age’] = 20; // NoSuchMethodError

as和is关键字
dynamic obj = <String, int>{};
if(obj is Map<String, int>){
obj[‘age’] = 20;
}
var map = obj as Map<String, int>;

运算符

三目运算符

int a = 20;
var va1 = a > 10 ? a : 0;

~/除法,返回整数结果(取商)

级联操作符

String s = (new StringBuffer()

异常

    try{

    } on Exception {

    } catch(e){

    }

可选参数

  // 可选参数
  void userSetting({int age, String name}) {}

  //必选参数
  void userSettings({@required int age, @required String name}) {}

  // 默认参数
  void userSettingss({int age, String name, String option = '小明'}) {}

函数

  void printItem(String item){
    print(item);
  }

  void testfun() {
      var users = ['1', '2', '3'];
      users.forEach(printItem); //函数作为参数传递

    var say = (name){
      print(name);
    };
    say('过年了');//函数作为不变量
  }
发布了167 篇原创文章 · 获赞 62 · 访问量 22万+

猜你喜欢

转载自blog.csdn.net/AdrianAndroid/article/details/104223894
今日推荐