网络编程 
首页 > 网络编程 > 浏览文章

Google Dart编程语法和基本类型学习教程

(编辑:jimmy 日期: 2025/7/5 浏览:3 次 )

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));

上一篇:一个js导致的jquery失效问题的解决方法
下一篇:jQuery实现可收缩展开的级联菜单实例代码
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 网站地图 SiteMap