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. 从0开始探究vue-组件化-组件之间传值

    理解 Vue中有个非常重要的核心思想,就是组件化,组件化是为了代码复用 什么是组件化 组件化,就像一个电脑主机里的主板,有内存条的插口,有硬盘,光驱等等的插口,我们的项目,就像一个电脑主机,通过各种组 ...

  2. ionic3跳转页面的方法

    ionic3很好很强大,有人喷有人赞.不想参与其中,个人认为如果能很好的满足需求,好坏都是无所谓的,最合适的才是最好的.总结下最近使用ionic3的一些知识点,方便以后查询.多句嘴:会ionic3和只 ...

  3. Java实现 LeetCode 824 山羊拉丁文(暴力)

    824. 山羊拉丁文 给定一个由空格分割单词的句子 S.每个单词只包含大写或小写字母. 我们要将句子转换为 "Goat Latin"(一种类似于 猪拉丁文 - Pig Latin ...

  4. Java实现第九届蓝桥杯付账问题

    付账问题 题目描述 [题目描述] 几个人一起出去吃饭是常有的事.但在结帐的时候,常常会出现一些争执. 现在有 n 个人出去吃饭,他们总共消费了 S 元.其中第 i 个人带了 ai 元.幸运的是,所有人 ...

  5. 关于uniapp获取当前距离屏幕顶部的距离

    onPageScroll(e){ console.log(e); }

  6. 源码分析(5)-ArrayList、Vector和LinkedList(JDK1.8)

    一.概述 1.线程安全:ArrayList和LinkedList非线程安全的.Vector线程安全的. 2.底层数据结构:ArrayList和Vector底层数据结构是数组:LinkedList双向链 ...

  7. Spring AOP学习笔记02:如何开启AOP

    上文简要总结了一些AOP的基本概念,并在此基础上叙述了Spring AOP的基本原理,并且辅以一个简单例子帮助理解.从本文开始,我们要开始深入到源码层面来一探Spring AOP魔法的原理了. 要使用 ...

  8. 关于adb命令的基本使用

    在我们使用adb命令之前,我们要安装一个安卓模拟器(夜神.逍遥.海马王......),这里以夜神安卓模拟器为准(个人推荐,没用过可以使用夜神模拟器). 进入夜神安卓模拟器官网:https://www. ...

  9. Linux 和 Vim 常用命令整理

    Sftp常用命令: lcd f:本地切换到 F盘 lpwd本地 当前目录 lls本地 文件列表 put 本地 上传文件到服务器(put输入后,回车会有弹窗,选择上传文件) get下载文件到本地 Lin ...

  10. 【Spring注解驱动开发】在@Import注解中使用ImportSelector接口导入bean

    写在前面 在上一篇关于Spring的@Import注解的文章<[Spring注解驱动开发]使用@Import注解给容器中快速导入一个组件>中,我们简单介绍了如何使用@Import注解给容器 ...