为什么80%的码农都做不了架构师?>>>   

在go中函数也是一种变量,我们通过type定义这种变量的类型。拥有相同参数和相同返回值的函数属于同一种类型。

通过将函数作为一种类型的变量,我们可以将这种类型的函数作为值传递。

下面是一个简单的例子。

type functinTyoe func(int) bool // 声明了一个函数类型func isOdd(integer int) bool {if integer%2 == 0 {return false}return true
}func isEven(integer int) bool {if integer%2 == 0 {return true}return false
}// 声明的函数类型在这个地方当做了一个参数func filter(slice []int, f functinTyoe) []int {var result []intfor _, value := range slice {if f(value) {result = append(result, value)}}return result
}
func test(){slice := []int {1, 2, 3, 4, 5, 7}fmt.Println("slice = ", slice)odd := filter(slice, isOdd)    // 函数当做值来传递了fmt.Println("Odd elements of slice are: ", odd)even := filter(slice, isEven)  // 函数当做值来传递了fmt.Println("Even elements of slice are: ", even)
}

转载于:https://my.oschina.net/lucasz/blog/86533

函数作为变量,类型---golang相关推荐

  1. python怎么用函数查看变量类型_查看变量类型的Python内置函数是()。

    [单选题]下列不属于反射的是( ) [判断题]传统通俗史学有普及型和通俗型 [单选题]当前最流行和最受重视的资料分析是( ). [简答题]什么情况下采用斜视图比较合适? [单选题]下列命题正确的是( ...

  2. bool函数_PHP变量类型测试函数的使用:一、is_bool的用法

    昨天刚讲完PHP基础知识数据类型之间相互转换,今天就来讲讲PHP变量类型测试函数的使用. 在PHP编码过程中也非常常用到变量类型测试函数,那么现在我就来给大家讲解is_bool的基本知识. is_bo ...

  3. 【pycharm使用】【算数优先级】【变量的基本使用】【type` 函数查看变量类型】【变量的输入】【格式化输出】

    文章目录 pycharm 使用 单行注释(行注释 多行注释(块注释) 多选#号注释 开始运行 指令 算数运算符 算数运算符的优先级 变量的基本使用 变量演练1 -- iPython 变量演练 2 -- ...

  4. 使用Python内置函数对变量类型进行转换

    int():将一个数值或者字符串转换成整数,可以指定进制 float():将一个字符串转换为浮点型 str():将指定的对象转换为字符串形式,可以指定编码 chr():将指定的整数转换成该编码对应的字 ...

  5. python基础-变量,变量类型,字符串str,元组tuple,列表list,字典dict操作详解(超详细)

    python基础--变量 (文章较长,若需要单独看某一个点,可点击目录直接跳转) 文章目录 python基础--变量 1. 变量 2. 变量类型 2.1数字类型 2.2 字符串 2.3 列表 2.4 ...

  6. python学习1:注释\变量类型\转换函数\转义字符\运算符

    python基础学习 与大多数语言不同,python最具特色的就是使用缩进来表示代码块,不需要使用大括号 {} .缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数. (一个tab= ...

  7. py哪个函数可以返回输入的变量类型_[Python基础]二、pycharm,python变量

    2.1 Python简介 Life is short,you need Python (人生苦短,我用Python) 解释器: 将其他语言翻译成机器语言的工具,称为编译器 编译器的翻译方法有两种: 编 ...

  8. 判断Javascript变量类型的函数

    toString 本来是用来做字符串转换的,不过现在流行用来做变量类型的检查了.这里也的一个函数,方便检查变量的类型,可以用来代替 typeof function getType(o) {var _t ...

  9. C++11-列表初始化/变量类型推导/范围for/finaloverride/默认成员函数控制

    C++11-列表初始化/变量类型推导/范围for/final&override/默认成员函数控制 零.前言 一.C++11简介 二.列表初始化 1.内置类型列表初始化 2.自定义类型列表初始化 ...

  10. python用来查看变量类型的函数是什么_python查看变量类型的函数

    怎么查看变量的类型 python方法如下: type(变量),输出的结果就是变量的类型: 在Python里面变量在声明时,不需要指定变量的类型,变量的类型是动态指定的: 也就是说变量的类型,根据给出的 ...

最新文章

  1. POJ 3046 Ant Counting(递推,和号优化)
  2. 4500-X启动到“511K bytes of non-volatile configuration memory”,无法继续?
  3. 概率论与数理统计の笔记
  4. 【noip模拟】德充符
  5. java锁_Java锁
  6. 2018.09.28 hdu5435A serious math problem(数位dp)
  7. editplus public class自动补齐大括号问题破解
  8. 数据挖掘竞赛,算法刷题网址汇总
  9. Button或者ImageButton的背景设为透明或者半透明
  10. mapred.local.dir
  11. 04-树6 Complete Binary Search Tree(30 分)
  12. Python编程手册系列 - 日历、日期、时间相关内建模块详解
  13. WordPress源代码研究-插件机制
  14. Android 自定义progressDialog实现
  15. Java中居然有一个存在十几年的bug...
  16. SQL:Mongoose在node中的应用
  17. 管家婆软件二次开发(在管家婆财贸双全中实现建行支付)
  18. iOS性能优化系列篇之“优化总体原则”
  19. 解压压缩包的时候要求输入密码
  20. mybatis学习4

热门文章

  1. ios预支付系统 java_支付系统的预发布环境如何搭建
  2. Nessus更新到8.6.0
  3. Nessus更新到8.5.0
  4. LilyPad Arduino可穿戴技术和电子织物控制器板简介
  5. mocha 测试 mysql_mocha 的基本用法 istanbul 生成测试覆盖率报告 mockjs 模拟网络请求...
  6. python编程标准_python编程规范
  7. oauth password模式_史上最干的Oauth案例分析
  8. 高铁订票系统css,高铁订票系统-数据库系统设计.pptx
  9. 应用深度学习EEGNet来处理脑电信号
  10. RMB77元实现全身VR跟踪,来自配合微软Kinect的Driver4VR