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}');
}