Google Dart编程语法和基本类型学习教程_基础知识

1. 变量声明

如何定义变量

复制代码 代码如下:

var name = 'Bob';

变量的初始值

复制代码 代码如下:

int lineCount;
assert(lineCount == null); // Variables (even numbers) are initially null.

可以使用var,也可以直接指定类型。
final, 定义为final的变量,值不能够被更改

复制代码 代码如下:

final name = 'Bob'; // Or: final String name = 'Bob';
name = 'Alice';     // ERROR

2. 基础类型

字符串

字符串可以使用单引号或者双引号。

复制代码 代码如下:

var s1 = 'Single quotes work well for string literals.';
var s2 = "Double quotes work just as well.";

在字符串中,可以直接应用值, ${表达式}, 如果只是一个变量,就可以去掉{}

复制代码 代码如下:

var s = 'string interpolation';
assert('Dart has $s, which is very handy.' ==
       'Dart has string interpolation, which is very handy.');
assert('That deserves all caps. ${s.toUpperCase()} is very handy!' ==
       'That deserves all caps. STRING INTERPOLATION is very handy!');

多行字符串,会被认为默认拼接。

复制代码 代码如下:

var s = 'String ''concatenation'
        " works even over line breaks.";
assert(s == 'String concatenation works even over line breaks.');

如果要使用多行字符串,可以这样, 用'''

复制代码 代码如下:

var s1 = '''
You can create
multi-line strings like this one.
''';

创建一个不考虑转义的字符串

复制代码 代码如下:

var s = @"In a raw string, even \n isn't special.";

StringBuffer, 非常类似.net中的。

复制代码 代码如下:

var sb = new StringBuffer();

sb.add("Use a StringBuffer ");
sb.addAll(["for ", "efficient ", "string ", "creation "]);
sb.add("if you are ").add("building lots of strings.");

var fullString = sb.toString();

数字

主要就2种,int 和 double, 它们都继承num类型

数字和字符串之间的转换

复制代码 代码如下:

// String -> int
var one = Math.parseInt("1");
assert(one == 1);

// String -> double
var onePointOne = Math.parseDouble("1.1");
assert(onePointOne == 1.1);

// int -> String
var oneAsString = 1.toString();
assert(oneAsString == "1");

// double -> String
var piAsString = 3.14159.toStringAsFixed(2);
assert(piAsString == "3.14");

布尔类型

bool,不同于js, 只要不是true, 那么就都是false.

Lists(可以当做数组)

复制代码 代码如下:

var list = [1,2,3]; //实例化一个list
list.add(4);       //添加一个元素4

可以使用for, for...in, foreach()来遍历一个list.

复制代码 代码如下:

var list = [1,2,3];
for (final x in list) {
  print(x);
}

或者

复制代码 代码如下:

var list = [1,2,3];
list.forEach((element) => print(element));

Maps(字典类型)

复制代码 代码如下:

var gifts = {                         // A map literal
// Keys       Values
  "first"  : "partridge",
  "second" : "turtledoves",
  "fifth"  : "golden rings"};

gifts["third"] = "apple"; //添加一个

使用foreach遍历

复制代码 代码如下:

var gifts = {
  "first" : "partridge",
  "second": "turtledoves",
  "fifth" : "golden rings"};
gifts.forEach((k,v) => print('$k : $v'));

getKeys()和getValues()方法

复制代码 代码如下:

var gifts = {"first": "partridge", "second": "turtledoves"};
var values = gifts.getValues();

//Print partridge and turtledoves, but not necessarily in that order.
values.forEach((v) => print(v));

时间: 2024-08-03 01:02:56

Google Dart编程语法和基本类型学习教程_基础知识的相关文章

JavaScript中的Number数字类型学习笔记_基础知识

使用IEEE754格式来表示整数和浮点数值.浮点数值:该数值中必须包含一个小数点,并且小数点后面必须至少有一位数字.浮点数值需要内存空间是保存整数值的两倍.最高精度是17为小数,但在进行算术运算时其精度远远不如整数. 各种数值类型:十进制,八进制(在严格模式下无效),十六进制 八进制字面量的第一位必须是0,然后是八进制数字序列(0~7).如果字面值中的数值超出了范围,那么前导0将被忽略,后面的数值将被当做十进制数来解析 070//56 079//79 十六进制字面值的前两位必须是0x,后跟十六进

JavaScript的instanceof运算符学习教程_基础知识

语法 object instanceof constructor 参数 object: 要检测的对象. constructor: 某个构造函数 描述:instanceof 运算符用来检测 constructor.prototype 是否存在于参数 object 的原型链上. // 定义构造函数 function C(){} function D(){} var o = new C(); // true,因为 Object.getPrototypeOf(o) === C.prototype o i

JavaScript中的Object对象学习教程_基础知识

参数:(1)obj 必需.Object 对象分配到的变量名称.  (2)值 可选.任一 JavaScript 基元数据类型(数字.布尔值或字符串).  如果值是一个对象,则返回的对象是未修改的.  如果值是 null."未定义"或"未提供",则创建无内容的对象.  Object对象的方法 Object作为构造函数使用时,可以接受一个参数.如果该参数是一个对象,则直接返回这个对象:如果是一个原始类型的值,则返回该值对应的包装对象.利用这一点,可以写一个判断变量是否为对

JavaScript中的原型继承基础学习教程_基础知识

大多数编程语言中,都有类和对象,一个类可以继承其他类. 在JavaScript中,继承是基于原型的(prototype-based),这意味着JavaScript中没有类,取而代之的是一个对象继承另一个对象.:) 1. 继承, the proto在JavaScript中,当一个对象rabbit继承另一了对象animal时,这意味着rabbit对象中将会有一个特殊的属性:rabbit.__proto__ = animal; 当访问rabbit对象时,如果解释器在rabbit中不能找到属性,那么它会

总结JavaScript设计模式编程中的享元模式使用_基础知识

享元模式不同于一般的设计模式,它主要用来优化程序的性能,它最适合解决大量类似的对象而产生的性能问题.享元模式通过分析应用程序的对象,将其解析为内在数据和外在数据,减少对象的数量,从而提高应用程序的性能. 基本知识 享元模式通过共享大量的细粒度的对象,减少对象的数量,从而减少对象的内存,提高应用程序的性能.其基本思想就是分解现有类似对象的组成,将其展开为可以共享的内在数据和不可共享的外在数据,我们称内在数据的对象为享元对象.通常还需要一个工厂类来维护内在数据. 在JS中,享元模式主要有下面几个角色

JavaScript中的prototype原型学习指南_基础知识

原型是什么 Function 类型有一个属性 prototype,直接翻译过来就是原型.这个属性就是一个指针,指向一个对象,这个对象包含一些属性和方法,这些属性和方法会被当前函数生成的所有实例(对象)所共享. 这句话根据前面所说的,细细琢磨下来,就可以得到下面代码: function Person(){ ... } Person.prototype = { country : 'china', sayName : function(){ ... } } 先创建了一个 Function 类型的实例

JavaScript的React框架中的JSX语法学习入门教程_基础知识

什么是JSX? 在用React写组件的时候,通常会用到JSX语法,粗看上去,像是在Javascript代码里直接写起了XML标签,实质上这只是一个语法糖,每一个XML标签都会被JSX转换工具转换成纯Javascript代码,当然你想直接使用纯Javascript代码写也是可以的,只是利用JSX,组件的结构和组件之间的关系看上去更加清晰. var MyComponent = React.createClass({/*...*/}); var myElement = <MyComponent som

javascript编程必备_JS语法字典第1/2页_基础知识

1.document.write(""); 输出语句 2.JS中的注释为// 3.传统的HTML文档顺序是:document->html->(head,body) 4.一个浏览器窗口中的DOM顺序是:window->(navigator,screen,history,location,document) 5.得到表单中元素的名称和值:document.getElementById("表单中元素的ID号").name(或value) 6.一个小写转大

javascript编程起步(第三课)_基础知识

javascript编程起步第三课 第三课终于和大家见面了, 大家要感谢 Actions 的辛勤劳动啊, 好好利用论坛给大家提供的资源和教程, 希望大家一起学习提高 :D 大家有什么意见, 建议或者想法, 可以到本版的教程问答区 或 站务管理版的 建议或意见 去发表, 我们会及时给您反馈 :) 下面是今天的学习重点 A.补充上课的变量内容 B.if语句的基本语法 C.window.com()基本用法 A.变量 1.变量的类型规则 javascript是无类型的他的变量可以放任何数据类型的值. 2