Dart 语言之“内置类型”

1、数值类型:num

在java中的八大基本数据类型,dart 中都可以用数值类型来表示,dart中数值类型只有两种:int double;整型和浮点型,它们的父类都是  num;

int  :表示整型;

继承num

int 在java中占4个字节;在dart中,如果编译成javaScript 的时候占32bit(4个字节),默认是64bit,因此dart中int的长度应该是根据环境来确定的,此处可以看作了java 一致;

在Dart中,我们可以将你int当成java中的short、int、long来使用,如果我们写的dart声明的变量超过了4个字节,那么Dart会将其编译成类似java中的long,否则编译成java中的short或者int;

java中int 是基本数据类型,Dart中int 是类,所以两者的字节占用大小是没有可比性的;

dart源码中int类型注释

double:表示浮点型;

继承num

dart  中没有float类型,只有double,表示浮点型都用double表示;与java类似;


2、字符串类型:String

    基本使用:

         与java没有什么区别;

          String str = "hello";//声明一个字符串

字符串拼接比较:

        java写法:

        1、可以使用 + 号进行字符串拼接(会生成多个对象,不推荐)

String str = "hello";

String txt = str+10+"美女,晚上好";

        2、可以使用 stringbuffer/stringbuilder/format 进行拼接;

int i = 2;

String str ="1";

String  format =String.format("%s%d",str,i);

        dart写法:

String str ="你好,";

int num = 10;

String txt = "$str你是$num号美女吗?"

print(txt);

输出结果:你好,你是10号美女吗?

注意:

1、💲符号后面跟的是变量;

2如果后面跟的是字符或者数字,则需要{ }将其括起来,否则编译其无法判定哪个字符串是变量。例如:

String str ="你好,";

int num = 10;

String txt = "${str}sam,你是$num号美女吗?"

print(txt);

输出结果:你好,sam,你是10号美女吗?

字符串声明

    java写法

        String text ="我是一个字符串";

dart:写法

        单引号声明 

String text =‘我是一个Dart 字符串’;

        双引号声明

String text =“我是一个双引号声明的Dart 字符串”;

字符串转义

    java写法

String  s = "\"带有双引号的字符串"\" ;

String  n = "\\n这是一个换行的字符串" ;

    dart写法

/**单双引号使用*/

String dartS = '" 带有双引号的dart字符串 "';

String dartS1 = “'带有单引号的dart字符串 '”;

String  n = "\\n这是一个换行的字符串" ;//可以使用java中的方式

String  n1 = r"\n这是一个换行的字符串" ;//dart中使用方式,r前缀, raw:原始,表示字符串中所有的换行、制表等符号保持不变

/**三引号使用,多行字符串的声明*/

String  moreText = """第一行文字

第二行文字

第三行文字

第四行文字

....

""";


3、布尔类型 :bool

           与java一致,没什么可说的;

4、数组类型:List

    dart写法

        数组声明

List<String> list = new List();//声明一个带有泛型的数组

List<String> list = List();//new 关键字可以省略

List<int>list2 =[1,2,3,4,5];//可以在声明时直接赋值,java中则不可以;

        数组值的获取

像java数组一样通过下标取元素

int item0=list2[0];

        遍历数组

//使用foreach 循环进行遍历

for (var  item  in list2 ){

print ( item)

}

//使用for循环进行遍历

for (var j = 0 ;j< list2 .length; ++j){

print ( list2 [j] )

}


        不可变的数组声明

        List<int >list1 = const [1,2,3];//数组被const 修饰,不可改变

        list1=[3,4,5]; //可以修改引用

        list1.add(1); //此处虽在编译时不会报错,但运行时会报错;


const 修饰的是[1,2,3]这一个对象,表示这个对象不可变,不能在add元素了;

   以上代码报以下错误:

运行时报错


         const  List<int >list1 = [1,2,3];//数组被const 修饰,不可改变

         list1=[3,4,5]; //此处在编译时会报错;

         list1.add(1); //同样不运行添加元素;


 const 修饰的是变量,也就是引用,那么变量不能够再引用其他对象了;

由此可见,const在修饰谁时,谁就是不可变的!与c\c++类似;

5、映射集合:Map

         与java类似

        Map <int , int >map = {1:1, 2:2, 3:3 };

       通过下标获取元素

       int value=  map[1];//注意里面的1是key,不是下标;

        修改元素

        map[1]= 100;

        不可变集合

        于List 类似,同List;

         遍历map与java一样


6、Unicode:Runes

           (Unicode32)特殊字符表示类、用于表示一个表情符号、

            此类型在开发中几乎用不到,此处不做详细说明

7、标识符:Symbols

        类似c/c++中的宏

          此类型在开发中几乎用不到,此处不做详细说明

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342

推荐阅读更多精彩内容