6.内置操作方法和属性

6.1.数字类型

1.isEven判断是否是偶数

int n = 10;
print(n.isEven); // true

2.isOdd判断是否是奇数

int n = 101;
print(n.isOdd); //true

3.abs()取绝对值

int n = -101;
print(n.abs()); // 101

4.round()、floor()、ceil()

double n = 18.49;
// 四舍五入
print(n.round());
// 向下取整
print(n.floor());
// 向上取整
print(n.ceil());

5.toInt()、toDouble()

double n = 18.49;
// 转成整型
print(n.toInt());
int m = 10;
// 转成浮点型
print(m.toDouble());

6.2.字符串类型

1.插值表达式

int a = 10;
int b = 20;
String s = "计算结果是: ${a + b}"; // 计算结果是:30
print(s);
String name = "小强";
int age = 18;
print("${name}的年龄是${age}"); // 小强的年龄是18

2.length取字符串长度

String s = "hello nodeing!!!";
print(s.length); // 16

3.isEmpty、isNotEmpty

String s = "hello nodeing!!!";
print(s.isEmpty); // false
print(s.isNotEmpty); // true
String s2 = "";
print(s2.isEmpty); // true
print(s2.isNotEmpty); // false

4.contains()

String s = "hello nodeing!!!";
// s 里面是否包含 nodeing这个字符串,包含返回true 没有包含返回false
print(s.contains("nodeing")); // true

5.subString()

String s = "hello nodeing!!!";
// 截取下标从0到2的字符串
print(s.substring(0, 2)); // he
// 从下标2开始截取到末尾
print(s.substring(2)); // llo nodeing!!!

6.startsWith()和endsWith()

String s = "hello nodeing!!!";
// s字符串是否以h开头
print(s.startsWith("h")); // true
// s字符串是否以h结尾
print(s.endsWith("h")); // false

7.indexOf()和lastIndexOf()

String s = "hello nodeing!!!";
//返回 字符串“o”在字符串s中首次出现的位置 如果o没有在s中,返回-1
print(s.indexOf("o"));
// 功能和indexOf一样,区别是lastIndexOf是从后面开始找
print(s.lastIndexOf('o'));

8.toLowerCase()和toUpperCase()

String s = "hello nodeing!!!";
// 转成大写
print(s.toUpperCase()); // HELLO NODEING!!!
// 转成小写
String s1 = "ABC";
print(s1.toLowerCase()); // abc

9.trim()、trimLeft()、trimRight()

String s = "  hello nodeing!!!  ";
// 去掉两边空格
print(s.trim());
// 去掉左边空格
print(s.trimLeft());
// 去掉右边空格
print(s.trimRight());

10.split()和replaceAll()

String s = "hello nodeing!!!";
// 字符串分割 返回一个list
print(s.split(" ")); // [hello, nodeing!!!]
// 把所有的e找出来替换成d
print(s.replaceAll('e', "d")); // hdllo nodding!!!

6.3.列表

1.length

var lis = [1, 2, 3];
// 求列表的长度
print(lis.length); // 3

2.add()、insert()

var lis = [1, 2, 3];
// 增加一个元素
lis.add(4);
print(lis); // [1, 2, 3, 4]
// 在下标为1的位置插入元素5
lis.insert(1, 5);
print(lis)

3.remove()、clear()

var lis = [1, 2, 3, 1];
// 删除某个值
lis.remove(1);
print(lis);
// 清空列表
lis.clear();
print(lis);

4.indexOf()、lastIndexOf()

var lis = [1, 2, 3, 1];
// 和字符串中的用法一样
print(lis.indexOf(1)); // 0
print(lis.lastIndexOf(1)); // 3

5.sort()、sublist()

var lis = [1, 2, 3, 1];
// 排序
lis.sort();
print(lis);
// 截取
print(lis.sublist(1,2));

6.4.Map

1.length

var map = {"name": "xiaoqiang", "age": 12};
print(map.length);

2.isEmpty()、isNotEmpty()

var map = {"name": "xiaoqiang", "age": 12};
// 是否为空
print(map.isEmpty); // false
// 不是空
print(map.isNotEmpty); // true

3.Keys、Values

var map = {"name": "xiaoqiang", "age": 12};
// 打印出所有的key
print(map.keys);
// 打印出所有的values
print(map.values);

4.containsKey()、containsValue()

var map = {"name": "xiaoqiang", "age": 12};
// 是否包含某个key
print(map.containsKey("name")); //true
// 是否包含某个value
print(map.containsValue("xiaoli")); // false

5.remove()

var map = {"name": "xiaoqiang", "age": 12};
map.remove("name");
print(map);

6.forEach()

var map = {"name": "xiaoqiang", "age": 12};
map.forEach((key, value){
print(key);
print(value);
});

螺钉课堂视频课程地址:http://edu.nodeing.com

dart快速入门教程 (6)的更多相关文章

  1. dart快速入门教程 (8)

    9.dart中的库 9.1.自定义库 自定义库我们在前面已经使用过了,把某些功能抽取到一个文件,使用的时候通过import引入即可 9.2.系统内置库 以math库为例: import "d ...

  2. dart快速入门教程 (7.4)

    7.12.多态 多态字面上理解就是多种状态,通俗的说,多态表现为父类定义一个方法不去实现,子类继承这个方法后实现父类的方法,这个方法有多种表现 // import 'person.dart'; voi ...

  3. dart快速入门教程 (7.3)

    7.4.抽离类为单独文件 新建一个文件,单独存放一个类,例如:Person类抽离到person.dart文件中 class Person { final String name; final num ...

  4. dart快速入门教程 (7.2)

    7.4.抽离类为单独文件 新建一个文件,单独存放一个类,例如:Person类抽离到person.dart文件中 class Person { final String name; final num ...

  5. dart快速入门教程 (7.1)

    7.面向对象 dart是一门使用类和单继承的面向对象语言,所有的对象都是类的实例,所有的类都是Object的子类,换句话说就是万物皆对象 7.1.类与对象 void main() { // 注意:ne ...

  6. dart快速入门教程 (2)

    2.变量和数据类型 2.1.变量和常量 变量通俗的说就是可以变化的量,作用就是用来存储数据,你可以把一个变量看作是一个水果篮,里面可以装苹果.梨.香蕉等,常量就是一个固定的值,和变量是相对的,变量可以 ...

  7. dart快速入门教程 (1)

    1.环境搭建 1.1.dart简介 Dart 是一种 易于学习. 易于扩展.并且可以部署到 任何地方 的 应用 编程 语言.Google 使用 Dart 来开发 大型应用.flutter使用dart语 ...

  8. dart快速入门教程 (5)

    5.函数 5.1.函数定义 语法: 返回值类型 函数名(参数类型 参数1, 参数类型 参数2,...) { // 函数体 return '返回值' } 举例: void main() { print( ...

  9. dart快速入门教程 (4)

    4.流程控制 4.1.分支结构 1.if语句 void main() { int score = 80; if (score >= 90) { print('优秀'); } else if (s ...

随机推荐

  1. Java实现 蓝桥杯 算法提高 套正方形(暴力)

    试题 算法提高 套正方形 问题描述 给定正方形边长width,如图按规律输出层层嵌套的正方形图形. 注意,为让选手方便观看,下图和样例输出均使用""代替空格,请选手输出的时候使用空 ...

  2. Java实现 蓝桥杯VIP 基础练习 字符串对比

    问题描述 给定两个仅由大写字母或小写字母组成的字符串(长度介于1到10之间),它们之间的关系是以下4中情况之一: 1:两个字符串长度不等.比如 Beijing 和 Hebei 2:两个字符串不仅长度相 ...

  3. Java实现 LeetCode 211 添加与搜索单词 - 数据结构设计

    211. 添加与搜索单词 - 数据结构设计 设计一个支持以下两种操作的数据结构: void addWord(word) bool search(word) search(word) 可以搜索文字或正则 ...

  4. Java实现 Leetcode 169 求众数

    public static int majorityElement(int[] nums) { int num = nums[0], count = 1; for(int i=1;i<nums. ...

  5. java实现扑克牌移动

    /* 下面代码模拟了一套扑克牌(初始排序 A~K,共 13 张)的操作过程. 操作过程是: 手里拿着这套扑克牌,从前面拿一张放在后面,再从前面拿一张放桌子上,再从前面拿一张放在后面,.... 如此循环 ...

  6. 树莓派使用 OLED 屏显示图片及文字

    树莓派默认是不带显示屏的,如果想要查看系统的一些信息,需要使用电脑登录到树莓派,或者通过 HDMI 连接外接显示器查看.这样做总是有点麻烦,我们可以通过外接一个 OLED 屏来显示一些关键参数或者图片 ...

  7. iOS-Code Data多线程的封装详解

    Code Data 的单例封装:      很容易发现,系统生成的模版代码将Core Data 的基本的准备(貌似还挺复杂!)都放在 AppDelegate中了,可苹果公司为什么会这么做呢?     ...

  8. 06.Django-用户认证

    用户认证 Django 内置一个 auth 模块,帮助用户实现注册.登录.注销以及修改密码等功能,帮助开发者省去了很多功夫 用于认证的数据表 auth_user User是auth模块中维护用户信息的 ...

  9. linux安装redis-6.0.1单机和集群

    redis作为一个直接操作内存的key-value存储系统,也是一个支持数据持久化的Nosql数据库,具有非常快速的读写速度,可用于数据缓存.消息队列等. 一.单机版安装 1.下载redis 进入re ...

  10. Spring WebFlux 学习笔记 - (一) 前传:学习Java 8 Stream Api (1) - 创建 Stream

    影子 在学习Spring WebFlux之前,我们先来了解JDK的Stream,虽然他们之间没有直接的关系,有趣的是 Spring Web Flux 基于 Reactive Stream,他们中都带了 ...