首页 > 其他分享 >dart 学习笔记

dart 学习笔记

时间:2022-11-02 09:12:27浏览次数:48  
标签:myList name age 笔记 dart 学习 Person print void

1.dart 下载安装,vscode 安装dart ,coderunner等
2.dart语法
1)需要入口函数main,或者void(没有返回值) main
2)定义变量
var str=‘kkk’
String str=‘kkkk’
永远不改变的常量用const 或者final修饰
const String str=‘kkkk’

3)数据类型
int
double
string
bool
map
list

4)运算符类型转换
字符串转num

int.parse(String)
判断数据类型用is
num is int?
判断空用isEmpty

5)list ,map,set方法属性

List
常用属性:
List myList = ['data1','data2','data3'];
print(myList.isEmpty); //是否为空
print(myList.isNotEmpty); //是否不为空
myList.reversed; //反转数组

常用方法:
myList.add('data4');//增加数据;
myList.addAll(List);//通常用来合并数组;

myList.indexOf('xxx');//用来查找数据,找不到返回-1;找到返回对应的下标;

myList.remove('data1');//删除指定的值;
myList.removeAt(index);//删除对应下标的值

myList.fillRange(0,1);//修改数据, 输入起始位置;

myList.insert(0,'data0');//向数组中插入数据
myList.insertAll(0,List);//插入数组

myList.join(',');// 把数组转换为字符串,以逗号形式分割

字符串转数组:
var str = 'data-data1-data2';
str.split('-');

Map

print(map.length); // 2
print(map.keys); // (name, age)
print(map.keys.toList()); // [name, age]
print(map.values.toList()); // [张三, 18]
print(map.isEmpty); // false 不为空
print(map.isNotEmpty); // true 不为空

remove(key) 删除指定key的数据

addAll({...}) 合并映射, 给映射增加属性

containsValue(value) 判断映射里是否有某个值, 返回true/ false

6)函数

7)类

1 定义这个类的属性和方法
//定义一个类的属性和方法
class Person {
String name = '张三';
int age = 19;
void getInfo() {
// print('我叫\(name,今年\)age');第一种
//推荐使用这样的写,通过this去访问
print("\({this.name}====\){this.age}");
}
}

//使用类中的属性和方法
void main() {
// 调用Perso这个类 首先需要实例化这个类
// Person p = new Person(); // 等价 var p=new Person
var p = new Person();
print(p.age);
p.getInfo();
}
2 改变类中的属性和方法
class Person {
String name = '张三';
int age = 19;
void getInfo() {
//推荐使用这样的写法
print("\({this.name}====\){this.age}");
}
//限制类型,更改类中的属性和方法
SetUserinfo(int age) {
this.age = age;
}
}

void main() {
// 调用Perso这个类 首先需要实例化这个类
Person p = new Person(); // 等价 var p=new Person
print(p.age);//19
p.getInfo();//张三19
p.SetUserinfo(100);
p.getInfo();//张三
100
}

8)静态成员

Dart中的静态成员:
1、使用static 关键字来实现类级别的变量和函数
2、静态方法不能访问非静态成员,非静态方法可以访问静态成员
`class Person {
static String name = '张三';
int age=20;

static void show() {
print(name);
}

void printInfo(){ /非静态方法可以访问静态成员以及非静态成员/
// print(name); //访问静态属性
// print(this.age); //访问非静态属性
show(); //调用静态方法
}

static void printUserInfo(){//静态方法
print(name); //静态属性
show(); //静态方法

    //print(this.age);     //静态方法没法访问非静态的属性
    // this.printInfo();   //静态方法没法访问非静态的方法
    // printInfo();

}
}
//没有带static的时候,是先实例之后再调用。使用了static之后,直接用Person调用
// print(Person.name);
// Person.show();

// Person p=new Person();
// p.printInfo();

Person.printUserInfo();`
9)类的继承

Dart中的类的继承:
1、子类使用extends关键词来继承父类
2、子类会继承父类里面可见的属性和方法 但是不会继承构造函数
3、子类能复写父类的方法 getter和setter

`class Person {
String name;
num age;
Person(this.name,this.age);
void printInfo() {
print("\({this.name}---\){this.age}");
}
}

class Web extends Person{
Web(String name, num age) : super(name, age){//super表示把实例化子类的时候,传入的name age赋值给Person构造函数
}
}
//在main函数中调用
Web w=new Web('张三', 12);
w.printInfo();`

标签:myList,name,age,笔记,dart,学习,Person,print,void
From: https://www.cnblogs.com/teahouse/p/16848834.html

相关文章

  • 深度学习基础课:全连接层的前向和后向传播推导(下)
    大家好~我开设了“深度学习基础班”的线上课程,带领同学从0开始学习全连接和卷积神经网络,进行数学推导,并且实现可以运行的Demo程序线上课程资料:本节课录像回放1加QQ群,获......
  • Javascript进阶笔记 - BOM
    6.BOM目录6.BOM1.BOM简介2.History3.Location4.定时器1.BOM简介BOM是指游览器对象模型,BOM提供了一组对象,方便用户通过JS操作游览器BOM对象Window代表......
  • Javascript进阶笔记 - 事件
    事件目录事件1.事件相关概念2.文档的加载3.事件的冒泡4.事件的委派5.事件监听绑定1.事件相关概念事件是电脑输入设备与页面进行交互的响应。注册就是告诉游......
  • Javascript进阶笔记 - 常用事件
    常用事件目录常用事件1.onload事件2.onclick事件3.onblur事件4.onchange事件5.onsubmit事件6.onscroll事件7.onmousemove事件8.onmousedown&onmouseup事件9.on......
  • Javascript进阶笔记 - DOM模型与节点
    DOM模型与节点目录DOM模型与节点1.DOM模型2.节点2.1节点的常用方法1.DOM模型DOM(文档对象模型)就是把文档中的标签,属性,文本转换成对象来管理(类似于Java中的对象)do......
  • Javascript进阶笔记 - DOM的增删改查
    DOM的增删改查目录DOM的增删改查1.DOM查询1.1常规DOM查询方法1.2通过CSS选择器查找HTML元素1.3通过HTML对象选择器查找HTML对象2.DOM元素的增添3.DOM元素的修改......
  • Javascript进阶笔记 - DOM操作CSS样式
    DOM操作CSS样式目录DOM操作CSS样式1.操作样式2.获取当前样式3.其它样式相关属性1.操作样式可以通过JS修改元素的内联样式语法:元素.style.样式名=样式值注意:......
  • JavaScript笔记 - 字符串常用方法
    字符串目录字符串1.字符串搜索indexOf()search()match()includes()startsWith()2.字符串提取slice()substring()substr()charAt()charCodeAt()split()3.字符串替换repl......
  • Javascript笔记 - JS中的数字
    数字目录数字1.精度2.数字方法3.把变量转换为数值1.精度整数在不使用指数或科学计数法的情况下,会被精确到15位varx=999999999999999;//x将是9999999999......
  • JavaScript笔记 - 正则表达式
    正则表达式目录正则表达式1.正则表达式语法1.1方括号1.2量词1.3元字符2.RegExp对象属性3.RegExp对象方法4.支持正则表达式的String对象的方法1.正则表达式语法......