当前位置: 首页 > news >正文

无涯教程-Flutter - Dart简介

Dart是一种开源通用编程语言,它最初是由Google开发的, Dart是一种具有C样式语法的面向对象的语言,它支持诸如接口,类之类的编程概念,与其他编程语言不同,Dart不支持数组, Dart集合可用于复制数据结构,例如数组,泛型和可选类型。

以下代码显示了一个简单的Dart程序-

void main() {print("Dart language is easy to learn");
}

变量和数据类型

变量被命名为存储位置,数据类型仅指与变量和函数关联的数据的类型和大小。

Dart使用 var 关键字声明变量。 var 的语法在下面定义,

var name=Dart;

final 和 const 关键字用于声明常量。它们定义如下-

void main() {final a = 12;const pi = 3.14;print(a);print(pi);
}

Dart语言支持以下数据类型-

  • Numbers       - 用于表示数字文字-Integer和Double。

  • Strings           - 代表字符序列,字符串值用单引号或双引号指定。

  • Booleans       - Dart使用 bool 关键字表示布尔值-true和false。

  • Lists和Maps - 用于表示对象的集合。可以在下面定义一个简单的列表-。

void main() {var list = [1,2,3,4,5];print(list);
}

上面显示的列表产生[1,2,3,4,5]列表。

可以按如下所示定义Map-

void main() {var mapping = {id: 1,name:Dart};print(mapping);
}
  • Dynamic     - 如果未定义变量类型,则其默认类型为动态,以下示例说明了动态类型变量-

void main() {dynamic name = "Dart";print(name);
}

判断与循环

判断块在执行指令之前判断条件。 Dart支持If,If..else和switch语句。

循环用于重复代码块,直到满足特定条件为止。 Dart支持for..in,while和do..while循环。

让无涯教程了解一个有关控制语句和循环用法的简单示例-

void main() {for( var i = 1 ; i <= 10; i++ ) {if(i%2==0) {print(i);}}
}

上面的代码打印从1到10的偶数。

Functions函数

函数是一起执行特定任务的一组语句,让无涯教程看一下Dart中的一个简单函数,如下所示-

void main() {add(3,4);
}
void add(int a,int b) {int c;c = a+b;print(c);
}

上面的函数将两个值相加并产生7作为输出。

面向对象编程

Dart是一种面向对象的语言。它支持面向对象的编程函数,例如类,接口等。

类是用于创建对象的蓝图。类定义包括以下内容-

  • Fields
  • Getters and setters
  • Constructors
  • Functions

现在,让无涯教程使用以上定义创建一个简单的类-

class Employee {String name;//getter methodString get emp_name {return name;}//setter methodvoid set emp_name(String name) {this.name = name;}//函数定义void result() {print(name);}
}
void main() {//对象创建Employee emp = new Employee();emp.name = "employee1";emp.result(); //函数调用
}

Flutter - Dart入门教程 - 无涯教程网无涯教程网提供Dart是一种开源通用编程语言,它最初是由Google开发的, Dart是一种具有C样式语法的面...https://www.learnfk.com/flutter/flutter-introduction-to-dart-programming.html

相关文章:

无涯教程-Flutter - Dart简介

Dart是一种开源通用编程语言&#xff0c;它最初是由Google开发的&#xff0c; Dart是一种具有C样式语法的面向对象的语言&#xff0c;它支持诸如接口&#xff0c;类之类的编程概念&#xff0c;与其他编程语言不同&#xff0c;Dart不支持数组&#xff0c; Dart集合可用于复制数据…...

如何创建美观的邮件模板并通过qq邮箱的SMTP服务向用户发送

最近在写注册功能的自动发送邮箱告知验证码的功能&#xff0c;无奈根本没有学过前端&#xff0c;只有写Qt的qss基础&#xff0c;只好借助网页设计自己想要的邮箱格式&#xff0c;最终效果如下: 也推销一下自己的项目ShaderLab&#xff0c;可运行ShaderToy上的大部分着色器代码&…...

手机无人直播软件在苹果iOS系统中能使用吗?

在现代社交媒体的时代&#xff0c;直播带货已经成为了一种热门的销售途径。通过直播&#xff0c;人们可以远程分享自己的商品&#xff0c;与观众进行互动&#xff0c;增强沟通和参与感。而如今&#xff0c;手机无人直播软件更是成为了直播带货领域的一项火爆的技术。那么&#…...

创建2个线程并执行(STL/Windows/Linux)

C并发编程入门 目录 STL 写法 #include <thread> #include <iostream> using namespace std;void thread_fun1(void) {cout << "one STL thread 1!" << endl; }void thread_fun2(void) {cout << "one STL thread 2!" <…...

Redis可以干什么

Redis可以做什么&#xff1f; 缓存 Redis作为一款高性能的缓存数据库&#xff0c;能够将常用的数据存储在内存中&#xff0c;以提高读写效率。它支持多种数据结构&#xff0c;如字符串、哈希表、列表、集合等&#xff0c;让你可以根据业务需求选择合适的数据结构进行缓存。 …...

R语言+Meta分析;论文新方向

Meta分析是针对某一科研问题&#xff0c;根据明确的搜索策略、选择筛选文献标准、采用严格的评价方法&#xff0c;对来源不同的研究成果进行收集、合并及定量统计分析的方法&#xff0c;最早出现于“循证医学”&#xff0c;现已广泛应用于农林生态&#xff0c;资源环境等方面。…...

实战系列(二)| MybatisPlus详细介绍,包含代码详解

目录 1. MybatisPlus 的基本功能2. 基本用法3. MybatisPlus 的配置4. MybatisPlus 的实体类、Mapper 接口、Service 类和 Controller 类 MybatisPlus 是一个功能强大的 MyBatis 增强工具&#xff0c;它提供了丰富的特性来简化操作数据库的代码。它主要用于简化 JDBC 操作&#…...

横向对比 npm、pnpm、tnpm、yarn 优缺点

前端工程化是现代Web开发中不可或缺的一环&#xff0c;它的出现极大地提升了前端开发的效率和质量。 在过去&#xff0c;前端开发依赖于手动管理文件和依赖&#xff0c;这导致了许多问题&#xff0c;如版本冲突、依赖混乱和构建繁琐等。而今&#xff0c;随着众多前端工程化工具…...

安防监控/视频汇聚/云存储/AI智能视频融合平台页面新增地图展示功能

AI智能分析网关包含有20多种算法&#xff0c;包括人脸、人体、车辆、车牌、行为分析、烟火、入侵、聚集、安全帽、反光衣等等&#xff0c;可应用在安全生产、通用园区、智慧食安、智慧城管、智慧煤矿等场景中。将网关硬件结合我们的视频汇聚/安防监控/视频融合平台EasyCVR一起使…...

机器人中的数值优化(九)——拟牛顿方法(下)、BB方法

本系列文章主要是我在学习《数值优化》过程中的一些笔记和相关思考&#xff0c;主要的学习资料是深蓝学院的课程《机器人中的数值优化》和高立编著的《数值最优化方法》等&#xff0c;本系列文章篇数较多&#xff0c;不定期更新&#xff0c;上半部分介绍无约束优化&#xff0c;…...

java 从resource下载excel打不开

GetMapping("/download/template")public void template(HttpServletResponse response) throws IOException {ServletOutputStream outputStream response.getOutputStream();InputStream inputStream null;try {//从resource获取excel文件流inputStream getClas…...

NS2安装及入门实例——(ns2.35 / Ubuntu20.04)

文章目录 一、ns2安装1、更新系统源2、准备工作3、下载安装包4、安装5、问题① 问题1② 问题2③ 问题3 6、安装成功7、环境配置 二、nam安装1、安装2、问题 三、实例 一、ns2安装 1、更新系统源 sudo apt-get update sudo apt-get upgrade2、准备工作 sudo apt-get install …...

平面设计的三大基本元素 优漫动游

平面设计需要美术基础&#xff0c;有美术基础的新人往往能更快完成平面设计岗的转行&#xff0c;在专业培训机构内讲师授课时也会从平面设计的基础——三大基本元素开始。今天就跟大家具体介绍一下平面设计的三大基本元素&#xff0c;让大家知道到底都有哪些。 平面设计的三…...

【电子取证篇】汽车取证检验标准

【电子取证篇】汽车取证检验标准 汽车取证鉴定可能涉及的测试/测量方法—【蘇小沐】 GA/T 976-2012《电子数据法庭科学鉴定通用方法》&#xff1b; GA/T 1998-2022《汽车车载电子数据提取技术规范》&#xff1b; GA/T 1999.2-2022《道路交通事故车辆速度鉴定方法 第2部分&…...

【元宇宙】游戏应用商城对元宇宙的影响

游戏行业不仅是创意设计原则的信息源&#xff0c;还是构建“下一代互联网”的基础技术。它也是元宇宙的经济活动先例。 究竟为什么会认为应用商城设置的30%佣金将导致元宇宙“无法实现”呢&#xff1f;有三个核心原因。首先&#xff0c;应用商城阻止了企业对元宇宙的投资&…...

win10-docker-mysql镜像安装运行基础

win10-docker-mysql镜像安装运行基础 文章目录 win10-docker-mysql镜像安装运行基础一、搜索可用镜像1.1 查询mysql镜像1.2 确定镜像版本号 二、运行mysql容器2.1 进入mysql2.2 测试mysql是否正常 三、将mysql数据存储目录映射到宿主机做持久化 一、搜索可用镜像 1.1 查询mysq…...

VirtualBox7+Ubuntu22集群规划

1. 目的: 新入手了一台小主机&#xff08;8核 / Intel(R) Xeon(R) W-10885M CPU 2.40GHz 2.40 GHz, 16vCpu / 64G RAM / 系统类型 64 位操作系统, 基于 x64 的处理器&#xff09;&#xff0c;原装了一套Win11专业版&#xff0c;打算用VirtualBox 虚拟一个集群。 2. …...

标绘一张图系统

一、概况 智慧武装三维电子沙盘是一种结合了智能技术和虚拟现实技术的沙盘模拟系统。它通过使用三维投影技术和交互式触控技术&#xff0c;将实际战场的地形、建筑物、人员等元素以虚拟的形式呈现在沙盘上。 智慧武装三维电子沙盘可以实时获取各种战场数据&#xff0c;并通过智…...

菜鸟教程《Python 3 教程》笔记(17):输入和输出

菜鸟教程《Python 3 教程》笔记&#xff08;17&#xff09; 17 输入和输出17.1 读取键盘输入17.2 读和写文件17.3 文件对象的方法17.3.1 read()、readline()、readlines() 17.3.2 tell()17.3.3 seek()17.4 pickle 模块&#xff08;没看懂&#xff09; 笔记带有个人侧重点&#…...

【动态规划】面试题 08.01. 三步问题

Halo&#xff0c;这里是Ppeua。平时主要更新C&#xff0c;数据结构算法&#xff0c;Linux与ROS…感兴趣就关注我bua&#xff01; 文章目录 0. 题目解析1. 算法原理1.1 状态表示1.2 状态转移方程1.3初始化1.4 填表顺序1.5 返回值 2.算法代码 &#x1f427; 本篇是整个动态规划的…...

SUPER COLORIZER模型文件结构解析:深入理解checkpoint与配置文件

SUPER COLORIZER模型文件结构解析&#xff1a;深入理解checkpoint与配置文件 刚拿到一个AI模型&#xff0c;比如这个SUPER COLORIZER&#xff0c;你是不是也和我当初一样&#xff0c;看着一堆文件有点懵&#xff1f;.ckpt、.pth、.yaml&#xff0c;还有各种文件夹&#xff0c;…...

Android AudioManager实战:手把手教你搞定蓝牙耳机与有线耳机的音频切换(附完整代码)

Android音频设备切换实战&#xff1a;从蓝牙耳机到有线耳机的智能路由控制 音乐播放到一半&#xff0c;蓝牙耳机突然没电了&#xff1b;会议演示时&#xff0c;插入有线耳机却希望保持扬声器外放——这些场景对Android开发者来说再熟悉不过。音频路由管理看似简单&#xff0c;实…...

嵌入式系统架构设计与LOP应用实践

1. 嵌入式系统软件架构设计进阶解析在嵌入式系统开发领域&#xff0c;软件架构设计往往决定了项目的成败。作为一名从业十余年的嵌入式系统工程师&#xff0c;我深刻体会到良好的架构设计不仅能提升开发效率&#xff0c;更能显著降低后期维护成本。本文将基于实际项目经验&…...

网络安全学习(面试)

前言&#xff1a;今天就不学习&#xff0c;有更重要的事情明天写&#xff0c;还有一点感觉逻辑不通正题&#xff1a;面试题今天学习安全设备的使用依托全流量分析、NDR、EDR、WAF、蜜罐等多源安全设备我需要知道了&#xff0c;这上面几种设备是什么&#xff0c;做什么用的&…...

OpenClaw本地调试避坑:Qwen3-32B私有镜像接口配置全流程

OpenClaw本地调试避坑&#xff1a;Qwen3-32B私有镜像接口配置全流程 1. 为什么需要本地模型对接&#xff1f; 上周我在尝试用OpenClaw自动处理一批技术文档时&#xff0c;发现公有云API的响应速度严重影响了任务效率。更关键的是&#xff0c;部分涉及内部代码的文档内容不适合…...

从仿真到版图:在ADS里完成Wilkinson功分器设计后,别忘了检查这几个Layout细节

从仿真到版图&#xff1a;Wilkinson功分器设计中的关键Layout细节解析 在微波电路设计中&#xff0c;Wilkinson功分器作为经典的功率分配/合成器件&#xff0c;其性能优劣直接影响整个射频系统的表现。许多工程师在ADS中完成仿真优化后&#xff0c;往往对自动生成的版图过于信任…...

RStudio Server配置避坑指南:解决常见安装与启动问题(含conda环境配置)

RStudio Server配置避坑指南&#xff1a;解决常见安装与启动问题&#xff08;含conda环境配置&#xff09; 在数据科学和统计分析领域&#xff0c;RStudio Server作为一款强大的集成开发环境&#xff0c;为团队协作和远程工作提供了极大便利。然而&#xff0c;当我们将RStudio …...

Windows虚拟机中部署黑群晖7.2 NAS:从零搭建到内网穿透全攻略

1. 为什么要在Windows虚拟机跑黑群晖&#xff1f; 很多朋友第一次听说在Windows里装黑群晖都会觉得奇怪——NAS不是应该用实体机吗&#xff1f;我最初也是这么想的&#xff0c;直到去年家里老笔记本闲置下来&#xff0c;实测发现用虚拟机跑群晖不仅省电省钱&#xff0c;还能实现…...

EthernetClientSecure深度指南:ESP32嵌入式TLS安全通信实战

1. EthernetClientSecure 库深度解析&#xff1a;面向嵌入式工程师的 TLS/SSL 安全以太网通信实践指南EthernetClientSecure 是一款专为 Arduino/ESP32 平台设计的轻量级、高可靠性安全以太网客户端库。它并非简单封装&#xff0c;而是通过精密的分层架构&#xff0c;在资源受限…...

Go语言的JSON处理技巧

Go语言的JSON处理技巧 JSON的重要性 JSON&#xff08;JavaScript Object Notation&#xff09;是一种轻量级的数据交换格式&#xff0c;广泛应用于Web应用、API通信、配置文件等场景。在Go语言中&#xff0c;JSON处理是一项基本技能&#xff0c;因为&#xff1a; API通信&am…...