Dart 基础教程(一)

dart 基础笔记

dart基础

void main(){
  print('li');
  var a = 1;//可以多次赋予
  print(a);
  final b = -2;//变量只能赋值一次
  print(b);
  const c = 3;//常量也不能修改

  int d = 4;//整型
  print(d.isEven);// 是否偶数 返回true
  print(d.isOdd);// 是否奇数 返回false
  print(b.abs());//取绝对值

  double e = 5.6;//浮点型 ~/这个是取整 %取余数
  print(e.round());//四舍五入
  print(e.floor());//不大于的最大整数
  print(e.ceil());//不小于的最小整数
  print(e.toInt());//change to int
  print(e.toDouble());//like his name

  //插值 这里一个很像format 或者是 %s
  print("d + b is ${d+b}");
  print('b is $b');//如果只是传一个参数就不用花括号了

  //string a = 'aaa';也可以使用3引号,多行。字符串前面加r 转义。
  //常用属性 length isEmpty isNotEmpty
  String ss = 'hhh123666666999999';
  print(ss.length);
  print(ss.isEmpty);

  //contains()是否包含,返回布尔值 索引indexOf() 大小写toLowerCase() toUpperCase()
  //trim()截取前后空格split()分隔 substring()截取。相当与python[0:4]
  print(ss.contains('hh'));
  print(ss.substring(0,4));

  //list ,const 不可变list,add()增加元素,insert(插入下标,元素) remove() clear()
  // sort() indexOf()返回位置 length长度属性 sublist()截取
  // shuffle()打乱 forEach()传入一个方法
  var list1 = const [1,2,3, 'ddd'];
  print(list1.sublist(0,2));
  list1.forEach(print);//循环这个list 调用这个方法

  //字典,.key .value containsKey() containsValue()
  var doc = {"h1":"here", "h2":"you", "h3":"are"};
  print(doc.keys);
  print(doc.values);
  print(doc.containsKey('hi'));//true
  
}

list

list.asMap()//转list为字典 key为0,1,2...

//dynamic 动态类型 可以被赋予不同的值

++ --

a = 1;

print(a++)//先打印后加1

print(++a)//先加1再打印

Dart 基础教程(一)_第1张图片

??=

??= 赋值,上图中 b??=10的意思是如果b有值,那么b仍然是那个它原本该有的值,如果b没有值,那么b将会被赋予=之后的值。


条件表达式

三目运算符

//条件表达式
// 三目运算符condition?expr1:expr2
// ??运算符expr1 ?? expr2
void main(){
  int a = 1;
  String s = a == 1 ? "aaa" : "bbb";
  print(s);//aaa //a == 1 ? 如果是true 
                 //返回expr1 反之返回 expr2


  String z;
  String b = "java";
  var c = z ?? b;
  print(c);//java 如果两个那个值中有一个没有定义的话 返回另外一个,
           // 如果都定义了的话,返回第一个。如果都没有定义的话 返回 null
}

if

//条件表达式
// if
void main(){
  int a = 1;
  if(a > 0){
    print('1111');
  }else if(a == 0){
    print(-111);
  }else {
    print(000);
  }
}


循环

for循环

for

void main() {
  var list1 = [1,2,3,4,5,6,7,8,9,10];
  for(int index = 0; index < list1.length; index ++){//初始条件 操作,index++也可以写在花括号里
    print(list1[index]);//输出1到10
  }
}

for in

void main(){
  var list = [1,2,3];
  for (var item in list){
    if(item != 2){
      print(item);//1 3
    }
  }
}

//1 2 3 4

while循环

while

void main() {
  int a = 0;
  while(a < 5){
    print(a++);
  }
}

//1 2 3 4

do... while...

void main(){
  var b = 1;
  do{
    print(b++);
  }while(b > 0 && b < 5);
}

//1 2 3 4

break 和 continue

break 终止循环

void main(){
  var list = [1,2,3];
  for (var item in list){
    if(item == 3){
      break;
    }
    print(item);
  }
}

// 1 2

提一下assert

如果布尔条件为false,则使用assert语句来中断正常执行。

void main() {
  var a = 1;
  assert(a != 3);
  print(a);//1
}

void main() {
  var a = 1;
  assert(a != 1);
  print(a);//没有执行
}

continue 跳出当前循环 继续循环

void main(){
  var list = [1,2,3,4,5,6];
  for (var item in list){
    if(item == 2){
      continue;
    }
    print(item);
  }
}

//1 3 4 5 6 

switch...case语句

var command = 'OPEN';
switch (command) {
  case 'CLOSED':
    executeClosed();
    break;
  case 'PENDING':
    executePending();
    break;
  case 'APPROVED':
    executeApproved();
    break;
  case 'DENIED':
    executeDenied();
    break;
  case 'OPEN':
    executeOpen();
    break;
  default://默认情况
    executeUnknown();
}

与标签调用 标签可以自定义 test

Dart 基础教程(一)_第2张图片

你可能感兴趣的:(dart,dart,基础教程,dart基础,flutter,flutter笔记)