一、入口方法
void main() { print("hello,world!"); }
main() { print("hello,world!"); }
二、输出
print();
三、注释
//我是单行注释 ///我是单行注释 /* 我是多行注释 我是多行注释 */
四、变量
var定义变量会推导类型
main(){ var a="aStr"; String b="bStr"; print(a+b); }
内置类型
数值类型(int、double)
double可以赋值整数,int不可以赋值小数;
int num1 = 1; // int num2=1.2; double num3 = 4; double num4 = 4.434343;
布尔类型
bool isTrue=true; bool isFalse=false;
字符串类型
main(){ String str1=" abc1 abc"; String str2='abc2'; String str3=''' abc3'''; String str4=r'abc'; print(str1.hashCode); print(str1.isEmpty); print(str1.isNotEmpty); print(str1.length); print(str1.runtimeType); print(str1.runes); print(str1.toLowerCase()); print(str1.trim()); print("str2:${str2}");
列表类型
void main() { // 创建list var list = [1, 2, 3]; // 添加一个元素 list.add(4); // 获取元素长度 print(list.length); // 打印元素 print(list); // 遍历打印元素 list.forEach(print); // 打乱元素 list.shuffle(); // 打印元素 print(list); }
键值对类型
void main(){ // 定义一个map Map map={'name':'liyuanjing','age':12}; // 打印name值 print(map['name']); // 增加键值address map['address']='beijing'; // 删除age键 map.remove('age'); print(map); // 清空map map.clear(); print(map); }
动态类型与Object
void main(){ var name="hello"; Object name2="hello2"; dynamic name3="hello3"; dynamic map={'name':'minos','age':'27'}; // is判断类型 var obj1=map is Map<String,String>; print(obj1); // var obj2=map as Map<String,String>; print(obj2); }
五、常量
main() { final nums = 300; const number = 200; print(nums); print(number); }
const编译器检查值,final运行时检查值
const time1='2020-01-01'; // const time2=DateTime.now(); final time3='2020-01-01'; final time4=DateTime.now(); print(time1); // print(time2); print(time3); print(time4);