变量与常量:

变量:

使用var声明变量,可以赋予不同数据类型的值,

未初始化时默认值是null

使用final声明的变量只能被赋值一次

void main(){
var a;
print(a);
a = 10;
print(a);
a = 'Hello World';
print(a);
var b = 20;
print(b);
 final c = 20 ;
  //c = 1;
  const d = 50;
  //d = 1;
  
}

控制台打印结果:

null
10
Hello World
20

常量:

使用const声明常量,使用const声明的必须是编译期的常量。

注意const和final的区别。

数据类型:

内置类型:

数值型num:整型int,浮点型double

void main(){
num a = 10;
a = 12.5;
int b = 20;
//b = 20.1;
double c = 30.5;
//c = 40;
print(c);
}

数值类型常见操作:+,-,*,/,~/(取整),%(取余),

数值类型常见属性:isNaN,isEven,isOdd等,

数值类型常见方法:abs(),round(),floor(),ceil(),toInt(),toDouble()

字符串:

使用单引号或者双引号创建字符串,使用三引号或者双引号创建多行字符串,使用r创建原始raw字符串

字符串运算:+,*,==,[]

插值表达式:${expression}

字符串常见属性:length,isEmpty,isNotEmpty

字符串常见方法:

void main() {
String str1 = 'Hello';
str1 = '''Hello
Dart''';
print(str1);
String str4 = 'This is My favorite language';
print(str4+'New');
print(str4*4);
print(str4[5]);
int a = 1;
int b = 3;
print('a*b = ${a*b}');
}

布尔型:

列表List(数组):

创建List :var list = [1,2,3];

创建不可变的List: var list = const [1,2,3];

构造创建List: var list = new List();

列表常见操作:

Map:(键值对)

Map常用操作方法

dynamic:动态类型(泛型)可以赋予不同类型的值

运算符:

算术运算符:

void main(){
int a = 10;
int b = 2;
print(a + b);
print(a - b);
print(a * b);
print(a / b);
print(a ~/ b);
print(a % b);
print(++a);//先加加在打印
print(a++);//先打印再加加
print(a);
}

打印结果:

12
8
20
5.0
5
0
11
11
12

关系运算符:

void main (){
int a = 5;
int b = 3;
print(a == b);
print(a > b);
print(a < b);
print(a != b);
print(a >= b);
print(a <= b); String strA = '123';
String strB = '321';
print(strA == strB);
}

打印结果:

false
true
false
true
true
false
false

逻辑运算符:

赋值运算符:

复合运算,先用左边变量和右边做运算再把值赋给左边变量

void main(){
int a = 10;
int b = 5;
b ??= a;
print(b);
a += b;
print(a); }

打印结果:

5
15

条件表达式:

void main(){
int gender = 0;
String str = gender ==0 ? 'Male' : 'Female';
print(str);
String a = 'Php' ;
String b = 'Dart';
String c = a ?? b;
print(c);
}

打印结果:

Male
Php

控制语句:

if语句:

void main(){
int score = 100;
if(score >= 90){
if(score == 100){
print('完美');
} else{
print('优秀');
}
} else if(score > 60 && score < 90){
print('良好');
} else if (score == 60){
print('及格');
} else {
print('不及格');
}
}

for语句:

void main(){
var list = [1,2,3,4,5];
for(var i = 0;i < list.length;i++){
print(list[i]);
} print('---------------'); for(var item in list){
print(item);
}
}

打印结果:

1
2
3
4
5
---------------
1
2
3
4
5

while语句:

void main(){
int count = 0;
while(count < 5){
print(count);
count++;
} print('-----$count------'); do{
print(count);
count--;
}while(count>0 && count<5);
}

打印结果:

0
1
2
3
4
-----5------
5
4
3
2
1

continue和break:

void main(){
var list = [1,2,3];
for (var item in list){
if(item == 2){
//break;
continue;
}
print(item);
} print('--------------'); var list2 = [4,5,6];
for(var item1 in list){
for(var item2 in list2){
if(item2 == 5){
//continue;
break;
}
print(item2);
}
}
}

打印结果:

1
3
--------------
4
4
4

switch..case:

void main(){
String language = 'php';
switch(language){
case 'Dart':
print('Dart is My fav');
break;
case 'php':
print('php is My fav');
break;
case 'java':
print('java is My fav');
break;
default:
print('None');
} print('-------------');
switch(language){
D:
case 'Dart':
print('Dart is My fav');
break;
case 'php':
print('php is My fav');
continue D;
//break;
case 'java':
print('java is My fav');
break;
default:
print('None');
}
}

打印结果:

php is My fav
-------------
php is My fav
Dart is My fav

Dart数据类型的更多相关文章

  1. Flutter实战:手把手教你写Flutter Plugin

    前言 如果你对移动端有所关注,那么你一定会听说过Flutter.得益于Google,Flutter一经推出便得受到了广泛关注.很多开发者跃跃欲试,国内部分大厂,诸如美团.闲鱼等团队已经开始了Flutt ...

  2. flutter从入门到精通一

    Flutter 是 Google 开源的 UI 工具包,帮助开发者通过一套代码库高效构建多平台精美应用,支持移动.Web.桌面和嵌入式平台 flutter是基于dart语言开发的,我们将首先通过几章节 ...

  3. Flutter集成高德定位和地图功能

    定位集成 配置高德定位依赖库 新建 Flutter 项目,使用 Android Studio 打开项目里的 android 工程,或者右键 android 目录-> flutter -> ...

  4. Flutter开发进阶学习指南Flutter开发进阶学习指南

    Flutter 的起源 Flutter 的诞生其实比较有意思,Flutter 诞生于 Chrome 团队的一场内部实验, 谷歌的前端团队在把前端一些"乱七八糟"的规范去掉后,发现在 ...

  5. 爱了!阿里大神最佳总结“Flutter进阶学习笔记”,理论与实战

    前言 "小步快跑.快速迭代"的开发大环境下,"一套代码.多端运行"是很多开发团队的梦想,美团也一样.他们做了很多跨平台开发框架的尝试:React Native. ...

  6. 2.Built-in types-基本数据类型(Dart中文文档)

    初次翻译,部分内容并非按字面翻译,是按本人理解进行了内容重组.如有错误望指正. Dart语言内置如下数据类型: numbers strings booleans lists (所谓的数组) maps ...

  7. Flutter学习笔记(3)--Dart变量与基本数据类型

    一.变量 在Dart里面,变量的声明使用var.Object或Dynamic关键字,如下所示: var name = ‘张三’: 在Dart语言里一切皆为对象,所以如果没有将变量初始化,那么它的默认值 ...

  8. Dart编程数据类型

    编程语言最基本的特征之一是它支持的数据类型集.这些是可以用编程语言表示和操作的值的类型. Dart语言支持以下类型 数字 字符串 布尔 列表list map 数字 Dart中的数字用于表示数字文字.D ...

  9. Dart简易教程 (1)---数据类型 运算符,类转换换

    从下面开始学习DART编程 以下是一个简单的示例: main(){ var number = 42; print(number);}程序说明,dart是一个强大的脚本类语言,可以不预先定义变量类型 , ...

随机推荐

  1. 《阿里巴巴Java开发手册1.4.0》阅读总结与心得(五)

    笔者作为一名有数年工作经验的Java程序员,仔细研读了这份手册,觉得其是一份不可多得的好材料.阿里巴巴在发布时所说,“阿里巴巴集团推出的<阿里巴巴Java开发手册(正式版)>是阿里巴巴近万 ...

  2. 洛谷P2577 [ZJOI2005]午餐 打饭时间作为容量DP

    P2577 [ZJOI2005]午餐 )逼着自己做DP 题意: 有n个人打饭,每个人都有打饭时间和吃饭时间.有两个打饭窗口,问如何安排可以使得总用时最少. 思路: 1)可以发现吃饭时间最长的要先打饭. ...

  3. BZOJ1878[SDOI2009]HH的项链+莫队算法模板

    题意:多次询问,求在一个区间中,有多少种珠子: 思路:莫队算法模板题目: 参考:https://www.cnblogs.com/RabbitHu/p/MoDuiTutorial.html #inclu ...

  4. lightoj 1097 - Lucky Number(线段树)

    Lucky numbers are defined by a variation of the well-known sieve of Eratosthenes. Beginning with the ...

  5. 【Leetcode】【简单】【66. 加一】【JavaScript】

    题目描述 66. 加一 给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一. 最高位数字存放在数组的首位, 数组中每个元素只存储单个数字. 你可以假设除了整数 0 之外,这个整数不会以零 ...

  6. Springboot源码分析之Spring循环依赖揭秘

    摘要: 若你是一个有经验的程序员,那你在开发中必然碰到过这种现象:事务不生效.或许刚说到这,有的小伙伴就会大惊失色了.Spring不是解决了循环依赖问题吗,它是怎么又会发生循环依赖的呢?,接下来就让我 ...

  7. 【LeetCode】240-搜索二维矩阵 II

    题目描述 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target.该矩阵具有以下特性: 每行的元素从左到右升序排列. 每列的元素从上到下升序排列. 示例: 现有矩阵 m ...

  8. Jsp学习笔记(4)——分页查询

    核心sql i是第几页,itemNum是每页显示的数据条数 select * from ( select e.*,rownum rn from ( select * from employee whe ...

  9. android 之图片异步加载

    一.概述 本文来自"慕课网" 的学习,只是对代码做一下分析 图片异步加载有2种方式:  (多线程/线程池) 或者 用其实AsyncTask , 其实AsyncTask底层也是用的多 ...

  10. java 当前时间月份

    public static void main(String[] arg) { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd ...