dart语言学习1-数据类型

1.变量

// 变量var 使用
void main(){
  var  a; // 未定义为null
  print(a);

  a = 10 ;
  print(a);

  a = 'hello world';
  print(a);

  // 使用final 关键字 申明的变量只能赋值一次
  final c = 30;
  // c = 50; // c只能被赋值一次
  // const 申明常量 必须是编译期常量
  const d = 20;
  
}

2、整形(数值类型)

/*
* 内置的数据类型
* 数值型 Number (num > Int、double)    字符串 String
* 布尔型 Boolean   列表 List
* 键值对 Map        Runes、Symbols
* */
// 数值型操作
/*
* 运算符 : +、-、*、/、~/(取整)、%
* 常用属性:isNaN、isEven、isOdd等
* 常用方法:ads()、round()、floor()、ceil()、toInt()、toDouble()
* 转换类型:toInt()、toDouble()、toString()
* */
void main(){
  num a = 10;
  a = 12.5;

  int b = 20;
 // b = 12.5;
  double c = 12.5;
  print(a + b);
  print(a - b);
  print(a * b);
  print(a / b);
  print(a ~/ b);
  print( c % a);
  print(0.0 / 0.0); // NaN
  print(b.isEven);
  print(b.isOdd);
  int e = -100;
  print(e.abs());
  print(c.toInt());
  print(e.toDouble());
}

3、字符串类型

/*
* 字符串创建
* 使用单引号,双引号创建字符串
* 使用三个引号或双引号创建多行字符串
* 使用r创建原始raw字符串
* */
/*
* 字符串操作
* 运算符: +、*、==、[]
* 插值表达式:${expression}
* 常用属性:length 、isEmpty、isNotEmpty
* 常用方法:
* contains()、subString()
* startsWith()、endsWith()
* indexOf()、lastIndexOf()
* toLowerCase()、toUpperCase()
* trim()、trimLeft()、trimRight()
* split()、replaceXXX()
* */
void main(){
  String str1 = 'Hello';
  String str2 = "Hello";
  String str3 = '''Hello ''';
  String str4 = 'Hello \n Dart'; //转译换行
  String str5 = r'Hello \n Dart';
  print(str1);
  print(str2);
  print(str3);
  print(str4);
  print(str5);

  String str6 = 'This is my favorite language';
  print(str6 + 'yes');
  print(str6 * 5);
  print(str6 == str5);
  print(str6[0]); // []获取字符串里面的字符
  var h = 2;
  var g = 3;
  print('h+g=${h+g}');
  print('h=${h}'); //
  print('h=$h'); // 等价于${h}

  // 是否包含
  print(str6.contains('This'));
  // 字符串截取
  print(str6.substring(0,3));
  // 分割
  print(str6.split(' '));
  // 替换
  print(str6.replaceAll('This', 'That'));
}

4、list类型(数组类型)

/*
* list就是数组
* 创建List : var list = [1,2,3];
* 创建不可变的List: var list = const[1,3,4];
* 构造创建: var list = new List();
* */

/*
* 常用操作
* [],length
* add(),insert()
* remove(),clear()
* indexOf(),lastIndexOf()
* sort(),sublist()
* shuffle(),asMap(),forEach()
* */
void main(){
  var list1 = [1,2,3,'2',true];
  print(list1);
  print(list1[0]); // 获取某一个元素
  list1[0] = 'Hello dart'; // 修改元素内容
  print(list1);
  var list2 = const [1,2,3]; // 不可变的list
  print(list2);
 // list2[0] = 'come in';

  // 通过关键字,new一个list
  var list3 = new List();
  print(list1.length);

  list1.add('new');
  print(list1);

  list1.insert(1, 'dart');
  print(list1);

  list1.remove('1');
  print(list1);
  
  print(list1.indexOf(true));// 找到返回位置,未找到返回-1
  var list4 = ['java','dart','python'];
  list4.sort();
  print(list4);

  // 截取
  print(list4.sublist(1));
  // 遍历
  list4.forEach(print); // 接受一个方法

  list1.clear();
  print(list1);

}

5、布尔型

void main(){
  bool isTrue = true;
  bool isFlase = false;
  print('true=${isTrue},false=${isFlase}');
}

猜你喜欢

转载自blog.csdn.net/memedadexixaofeifei/article/details/89981245