0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

dart命名参数与位置参数的区别

CHANBAEK ? 来源:myfreax ? 作者:myfreax ? 2022-12-09 16:34 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

经常搞不清楚dart命名参数与位置参数的区别?现在我们来对比一下,位置参数与命名参数的区别。

Dart 有两种类型的可选参数,分别是命名可选参数和位置可选参数。在我讨论差异之前,让我先看看两者的相似之处。

Dart 可选命名参数和可选位置参数在调用函数时不需要为参数指定值。可选命名参数和可选位置参数只能在任何必需参数之后声明。

可选命名参数和可选位置参数可以有一个默认值,在调用者没有指定值时使用。这就是两种可选参数相同点。

不同之处是可选位置参数使用[ ]包裹参数。可选命名参数使用{ }包裹参数。

可选位置参数

使用[ ]包裹的参数是一个可选位置参数。例如代码getHttpUrl(String server,[int port=80]) {}port是可选的,默认值为80

您可以在调用getHttpUrl使用或不使用第三个参数。这种方式声明函数的好处是使你的代码更为简洁,但缺失可读性。

例如以下代码,除非您知道8080和5是什么,否则很难说出那些看似神奇的数字是什么。您可以使用命名的可选参数来创建更具可读性的API

getHttpUrl(String server,url,String url,[int port=80]) {}
getHttpUrl('example.com', '/index.html', 8080); // port == 8080
getHttpUrl('example.com', '/index.html');       // port == 80

可选命名参数

使用{ }包裹的参数是一个命名的可选参数。您可以使用或不使用位置可选参数。但是当你使用位置可选参数时,你必须使用参数名称传递参数。

在命令可选参数中,你不必按顺序传递可选的命名参数,因为命名参数是按名称引用,所以它们的使用顺序可以不同于它们的声明顺序。

这一点相对于位置可选参数,更易于阅读和理解,缺点就是不够简洁。在两者的选择取决你个人需求。

getHttpUrl(String server, String path, {int port = 80}) {
  // ...
}
getHttpUrl('example.com', '/index.html', port: 8080); // port == 8080
getHttpUrl('example.com', '/index.html');             // port == 80

结论

至此,你已经了解如何在可选位置参数和命名可选参数之间的区别。可选项位置参数会使代码更为简洁,可选命名参数会使代码易于阅读和理解。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 参数
    +关注

    关注

    11

    文章

    1867

    浏览量

    33173
  • 代码
    +关注

    关注

    30

    文章

    4905

    浏览量

    70992
  • Dart
    +关注

    关注

    0

    文章

    9

    浏览量

    1838
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    常见的电子元器件型号命名方法及主要技术参数

    常见的电气图形符号常见的电子元器件型号命名方法及主要技术参数
    发表于 03-08 06:33

    电声器件命名、分类和基本参数

    电声器件命名、分类和基本参数
    发表于 06-30 19:29 ?1478次阅读

    电阻的型号命名方法,分类,主要特性参数

    电阻的型号命名方法,分类,主要特性参数
    发表于 06-30 19:31 ?3486次阅读

    场效应三极管的型号命名方法及参数

    场效应三极管的型号命名方法及参数   现行有两种命名方法。第一种命名方法与双极型三极管相同,第三位字母J代表结型场效
    发表于 11-09 15:30 ?2612次阅读

    甲醛传感器 (英国DART SENSOR公司)

    甲醛传感器 (英国DART SENSOR公司),技术文档,有各种参数
    发表于 07-04 18:26 ?66次下载

    电感参数对IPMSM转子位置估算的影响_于艳君

    电感参数对IPMSM转子位置估算的影响_于艳君
    发表于 01-08 13:58 ?5次下载

    常用电子元器件型号命名法及主要技术参数

    子元器件型号命名法及主要技术参数
    发表于 03-01 13:02 ?11次下载

    详解Google Dart 2.17版本的新语言特性

    中支持成员变量、改进超类参数继承及提高命名参数的灵活性等。我们推出全新的主要版本 package:lints 来帮助大家根据最佳实践检查 Dart 代码。同时,我们还大幅更新了核心库的
    的头像 发表于 05-27 10:44 ?1672次阅读

    box2d.dart Dart版的Box2D

    ./oschina_soft/box2d.dart.zip
    发表于 05-31 11:29 ?0次下载
    box2d.<b class='flag-5'>dart</b> <b class='flag-5'>Dart</b>版的Box2D

    python语言之参数args与kwargs介绍

    输入的是命名位置参数,例如: a=1,b=2 , 输出的是字典{'a':1,'b':2}
    的头像 发表于 08-23 10:39 ?2620次阅读

    贴片电容的标准命名方法定义

    贴片电容的命名方法国内和国外有一些区别但所包含的参数是一样的。
    的头像 发表于 08-25 16:06 ?2605次阅读

    如何在dart实例化类class

    Dart是面对象编程语言并且是基于mixin的继承方式。这意味着Dart不能继承多个类。
    的头像 发表于 12-05 16:55 ?1693次阅读

    如何获取矩形的测量及矩形位置参数

    首先给出一个问题:如下边一个图片中,如何获取矩形的测量,也就是说,需要更准确的矩形位置参数
    的头像 发表于 03-20 10:27 ?1594次阅读

    压敏电阻的选型参数含义及型号命名规律

    压敏电阻是一种用于保护电子设备免受电压冲击的元件,它们通常在电压超过其额定值时导电,以限制过电压,保护电路。压敏电阻的选型参数和型号命名规律对于确保正确应用和保护电路至关重要。 压敏电阻的选型参数
    的头像 发表于 09-06 09:06 ?3446次阅读

    贴片电解电容的命名规则涵盖哪些重要参数

    贴片电解电容的命名规则通过标准化编码整合容量、耐压、尺寸等关键参数,是电子工程师选型的重要依据。其命名结构通常为 尺寸代码+材质标识+容量代码+耐压代码+端头/包装标识 ,以风华
    的头像 发表于 07-09 15:55 ?171次阅读