Dart函数方法可分为两类:

一、内置方法/函数:
print();
二、自定义方法:
自定义方法的基本格式:
返回类型 方法名称(参数1,参数2,...){
方法体
return 返回值;
}
void printInfo(){
print('我是一个自定义方法');
} int getNum(){
var myNum=;
return myNum;
} String printUserInfo(){
return 'this is UserInfo';
} List getList(){
return ['','',''];
} void main(){
// print('调用系统内置的方法');
}

自定义方法 例1、定义一个方法 求1到这个数的所有数的和

    int sumNum(int n){
var sum=;
for(var i=;i<=n;i++)
{
sum+=i;
}
return sum;
} var n1=sumNum();
print(n1);
var n2=sumNum();
print(n2);
自定义方法 例2、定义一个方法然后打印用户信息
 String printUserInfo(String username,int age){  //行参
return "姓名:$username---年龄:$age";
}
 print(printUserInfo('张三',20)); //实参
自定义方法 例3、定义一个带可选参数的方法
  String printUserInfo(String username,[int age]){  //行参

   if(age!=null){
return "姓名:$username---年龄:$age";
}
return "姓名:$username---年龄保密"; } print(printUserInfo('张三',)); //实参 print(printUserInfo('张三'));

自定义方法 例4、定义一个带默认参数的方法
  String printUserInfo(String username,[String sex='男',int age]){  //行参

   if(age!=null){
return "姓名:$username---性别:$sex--年龄:$age";
}
return "姓名:$username---性别:$sex--年龄保密"; } print(printUserInfo('张三')); print(printUserInfo('小李','女')); print(printUserInfo('小李','女',));

自定义方法 例5、定义一个命名参数的方法
  String printUserInfo(String username,{int age,String sex='男'}){  //行参

     if(age!=null){
return "姓名:$username---性别:$sex--年龄:$age";
}
return "姓名:$username---性别:$sex--年龄保密"; } print(printUserInfo('张三',age:,sex:'未知'));

自定义方法 例6、实现一个 把方法当做参数的方法
 var fn=(){
print('我是一个匿名方法');
};
fn();
  //方法
fn1(){
print('fn1');
} //方法
fn2(fn){
fn();
}
//调用fn2这个方法 把fn1这个方法当做参数传入
fn2(fn1);
 

本文链接:https://www.cnblogs.com/jukaiit/p/12260739.html

Dart学习系列文章:https://www.cnblogs.com/jukaiit/category/1636484.html
												

Dart语言学习(十五) Dart函数方法的更多相关文章

  1. Dart语言学习(十二) Dart面向对象

    Dart作为一种高级语言,支持面向对象的很多特性,并且支持基于mixin的继承方式. 基于mixin的继承方式是指:一个类可以继承自多个父类,相当于其他语言里的多继承. 所有的类都有同一个基类Obje ...

  2. Dart语言学习(十四) Dart泛型

    什么是泛型? 通俗理解:泛型就是解决 类 接口 方法的复用性.以及对不特定数据类型的支持(类型校验) 如下代码,只能返回string类型的数据 String getData(String value) ...

  3. Dart语言学习(十) Dart流程控制语句

    一.条件语句:if.if...elseif.if...elseif...else int score = 95; if (score >=90) { print('优秀'); } else if ...

  4. 【原创】go语言学习(五)函数详解1

    目录 1.函数介绍 2.多返回值和可变参数 3.defer语句 4.内置函数介绍 1.函数介绍 1.1定义: 有输⼊入.有输出,⽤用来执⾏行行⼀一个指定任务的代码块. func functionnam ...

  5. “全栈2019”Java第九十五章:方法中可以定义静态局部内部类吗?

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  6. “全栈2019”Java第五十五章:方法的静态绑定与动态绑定

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  7. Go语言学习笔记七: 函数

    Go语言学习笔记七: 函数 Go语言有函数还有方法,神奇不.这有点像python了. 函数定义 func function_name( [parameter list] ) [return_types ...

  8. Go语言学习笔记五: 条件语句

    Go语言学习笔记五: 条件语句 if语句 if 布尔表达式 { /* 在布尔表达式为 true 时执行 */ } 竟然没有括号,和python很像.但是有大括号,与python又不一样. 例子: pa ...

  9. Dart语言学习(七)Dart Map类型

    映射(Maps)是无序的键值对: 常用属性: keys 获取所有的key值 values 获取所有的value值 isEmpty 是否为空 isNotEmpty 是否不为空 常用方法: remove( ...

随机推荐

  1. Multisim 如何添加文本 如何编辑文本字体

    1.在Multisim中如何添加文本 方法1)Place -> Text 方法2)Ctrl+T 2.如何修改字体的大小及颜色

  2. React 实现input输入框的防抖和节流

    1.为什么使用防抖和节流对于频繁触发的事件 比如keydown keyup事件 当频繁点击时候 会多次触发事件 页面出现卡顿 影响性能 2.函数防抖(debounce):间隔时间内只执行一次   函数 ...

  3. Python变量理解

    变量进阶(理解) 01. 变量的引用 变量 和 数据 都是保存在 内存 中的 在 Python 中 函数 的 参数传递 以及 返回值 都是靠 引用 传递的 1.1 引用的概念 在 Python 中 变 ...

  4. 【Python】第一个程序---Helloworld!

    对于大多数程序语言,第一个入门编程代码便是"Hello World!",以下代码为使用Python输出"Hello World!": #!/usr/bin/py ...

  5. 【做题笔记】P2251 质量检测

    一看题就知道是线段树裸题了.可是,对于每个 \(i\) ,对应的 \(Q\) 序列的下标是多少呢?应该查询的区间又是什么呢? 找规律: \(i\ \ \ \ \ \ \ \ m\) \(1\ \Rig ...

  6. 神经网络之反向传播算法(BP)公式推导(超详细)

    反向传播算法详细推导 反向传播(英语:Backpropagation,缩写为BP)是"误差反向传播"的简称,是一种与最优化方法(如梯度下降法)结合使用的,用来训练人工神经网络的常见 ...

  7. 6_3 矩阵链乘(UVa424)<用栈实现简单的表达式解析>

    假设你必须做A*B*C*D*E的运算,在这里A,B,C,D,E都是矩阵(matrix).由于矩阵相乘具有连接性(associative),所以相乘的顺序可以是任意的.然而所需要的基本乘法数却与不尽相同 ...

  8. STM32F103之I2C学习记录

    26.3.1  模式选择 该外设可以在以下四种模式之一 1)从机发送模式 2)从机接收模式 3)主机发送模式 4)主机接收模式 IIC协议时序 MSB:Most Significant Bit(最高有 ...

  9. vmware安装centos7 输入ifconfig出现ens33,没有eth0

    https://blog.csdn.net/qq_35079450/article/details/78634984 解决办法 1. 编辑网卡的配置文件 vi /etc/sysconfig/netwo ...

  10. as中怎么下载更新platforms和build-tools

    链接:https://blog.csdn.net/sunbinkang/article/details/78632652