Dart数据类型
变量与常量:
变量:
使用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数据类型的更多相关文章
- Flutter实战:手把手教你写Flutter Plugin
前言 如果你对移动端有所关注,那么你一定会听说过Flutter.得益于Google,Flutter一经推出便得受到了广泛关注.很多开发者跃跃欲试,国内部分大厂,诸如美团.闲鱼等团队已经开始了Flutt ...
- flutter从入门到精通一
Flutter 是 Google 开源的 UI 工具包,帮助开发者通过一套代码库高效构建多平台精美应用,支持移动.Web.桌面和嵌入式平台 flutter是基于dart语言开发的,我们将首先通过几章节 ...
- Flutter集成高德定位和地图功能
定位集成 配置高德定位依赖库 新建 Flutter 项目,使用 Android Studio 打开项目里的 android 工程,或者右键 android 目录-> flutter -> ...
- Flutter开发进阶学习指南Flutter开发进阶学习指南
Flutter 的起源 Flutter 的诞生其实比较有意思,Flutter 诞生于 Chrome 团队的一场内部实验, 谷歌的前端团队在把前端一些"乱七八糟"的规范去掉后,发现在 ...
- 爱了!阿里大神最佳总结“Flutter进阶学习笔记”,理论与实战
前言 "小步快跑.快速迭代"的开发大环境下,"一套代码.多端运行"是很多开发团队的梦想,美团也一样.他们做了很多跨平台开发框架的尝试:React Native. ...
- 2.Built-in types-基本数据类型(Dart中文文档)
初次翻译,部分内容并非按字面翻译,是按本人理解进行了内容重组.如有错误望指正. Dart语言内置如下数据类型: numbers strings booleans lists (所谓的数组) maps ...
- Flutter学习笔记(3)--Dart变量与基本数据类型
一.变量 在Dart里面,变量的声明使用var.Object或Dynamic关键字,如下所示: var name = ‘张三’: 在Dart语言里一切皆为对象,所以如果没有将变量初始化,那么它的默认值 ...
- Dart编程数据类型
编程语言最基本的特征之一是它支持的数据类型集.这些是可以用编程语言表示和操作的值的类型. Dart语言支持以下类型 数字 字符串 布尔 列表list map 数字 Dart中的数字用于表示数字文字.D ...
- Dart简易教程 (1)---数据类型 运算符,类转换换
从下面开始学习DART编程 以下是一个简单的示例: main(){ var number = 42; print(number);}程序说明,dart是一个强大的脚本类语言,可以不预先定义变量类型 , ...
随机推荐
- C#开发BIMFACE系列2 二次开发流程
系列目录 [已更新最新开发文章,点击查看详细] BIMFACE 平台是一个对外开放的平台,建筑行业的相关公司.软件公司或者有 BIM 业务需求的公司都可以注册成为开发者并使用其提供的强大功能. ...
- win8,右键添加notepad++
1.下载并安装notepad++ 2.创建txt文件test1.txt,内容如下: Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\*\ ...
- ui、li模拟下拉框
转载:原文地址:https://www.jianshu.com/p/e303e0298e9e 效果图: HTML: <div class="rank_top"> < ...
- 微信小程序实现pdf,word等格式文件上传
目前微信只支持从聊天记录里面获取文件 一.前言 目前微信提供了一个接口 wx.chooseMessageFile 它能让用户从聊天记录里面选择一个或者多个文件,然后返回它的一些信息,列入文件的path ...
- Java日志框架总结
1. 前言 从写代码开始,就陆陆续续接触到了许多日志框架,较常用的属于LOG4J,LogBack等.每次自己写项目时,就copy前人的代码或网上的demo.配置log4j.properties或者lo ...
- Apache JMeter (二)性能测试 入门实例
上一节我们说了关于Jmeter环境的配置,接下来讲一个测试的实例. 1.运行Jmeter 进入Jmeter程序所在目录,运行"bin/jmeter.bat" Jmeter支持中文, ...
- Nacos配置服务原理
Nacos Client配置机制 spring加载远程配置 在了解NACOS客户端配置之前,我们先看看spring怎么样加载远程配置的.spring 提供了加载远程配置的扩展接口 PropertySo ...
- style属性css与javascript对照表
有时候会用javascript来控制标签的style,但js的style属性写法跟css有点不一样,通常是一个单词的写法不变,单词-单词属性会去掉“-”,再把第二个单词的首字母大写,估计是为了与减法运 ...
- Redis常用命令(key、string、List)
1.Key 1.keys * 查询所有数据 2.exists key名 判断key名是否存在 3.move key名 数据库号(0-15) 移动数据key名到相应的数据库 4.expire ...
- Winform中实现ZedGraph曲线图的图像复制到剪切板、打印预览、获取图片并保存、另存为的功能
场景 Winforn中设置ZedGraph曲线图的属性.坐标轴属性.刻度属性: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...