Swift 函数的定义与调用(Defining and Calling Functions)

当你定义一个函数时,你可以定义一个或多个有名字和类型的值,作为函数的输入(称为参数,parameters),也可以定义某种类型的值作为函数执行结束的输出(称为返回类型)。

每个函数有个函数名,用来描述函数执行的任务。要使用一个函数时,你用函数名“调用”,并传给它匹配的输入值(称作实参,arguments)。一个函数的实参必须与函数参数表里参数的顺序一致。

在下面例子中的函数叫做"greetingForPerson",之所以叫这个名字是因为这个函数用一个人的名字当做输入,并返回给这个人的问候语。为了完成这个任务,你定义一个输入参数-一个叫做 personName 的 String 值,和一个包含给这个人问候语的 String 类型的返回值:

func sayHello(personName: String) -> String {
    let greeting = "Hello, " + personName + "!"
    return greeting
}

所有的这些信息汇总起来成为函数的定义,并以 func 作为前缀。指定函数返回类型时,用返回箭头 ->(一个连字符后跟一个右尖括号)后跟返回类型的名称的方式来表示。

该定义描述了函数做什么,它期望接收什么和执行结束时它返回的结果是什么。这样的定义使的函数可以在别的地方以一种清晰的方式被调用:

println(sayHello("Anna"))
// prints "Hello, Anna!"
println(sayHello("Brian"))
// prints "Hello, Brian!"

调用 sayHello 函数时,在圆括号中传给它一个 String 类型的实参。因为这个函数返回一个 String 类型的值,sayHello 可以被包含在 println 的调用中,用来输出这个函数的返回值,正如上面所示。

在 sayHello 的函数体中,先定义了一个新的名为 greeting 的 String 常量,同时赋值了给 personName 的一个简单问候消息。然后用 return 关键字把这个问候返回出去。一旦 return greeting 被调用,该函数结束它的执行并返回greeting 的当前值。

你可以用不同的输入值多次调用 sayHello。上面的例子展示的是用"Anna""Brian"调用的结果,该函数分别返回了不同的结果。

为了简化这个函数的定义,可以将问候消息的创建和返回写成一句:

func sayHelloAgain(personName: String) -> String {
    return "Hello again, " + personName + "!"
}
println(sayHelloAgain("Anna"))
// prints "Hello again, Anna!"

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-02 13:17:06

Swift 函数的定义与调用(Defining and Calling Functions)的相关文章

函数的定义与调用

博客园首发,转载请注明出处,多谢支持.http://www.cnblogs.com/xuema/ 函数的定义与调用 在TypeScript中定义函数的语法为: function function_name(arg:number,arg1:number,....):return_type{ code 函数要执行的代码; return data; } 其中 function 为声明函数的关键字,functionname 为自定义函数的名字,arg为参数列表,_return_type为该函数的返回值类

第16天:函数的定义和调用

函数: 1.函数,是一种封装.就是将一些语句,封装到函数里面.通过调用的形式,执行这些语句. 2.函数如果不调用,等于白写. 3.函数实参和形参个数要相同. 4.函数可以没有return语句,如果有,只能有一个. 一些简单的函数如下: 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>函数</

Python 函数的定义与调用

Python函数如果要调用必先定义 在定义阶段,Python只检查函数的语法是否正确不进行调用 函数的定义与变量的定义类似,没有事先定义变量,而直接引用变量,会报错没有事先定义函数,而直接调用,就相当于在引用一个不存在的变量名 在调用阶段才会执行函数,示例如下: #定义阶段 def foo(): print('from foo') bar() def bar(): print('from bar') #调用阶段 foo()

JavaScript作用域、上下文环境、函数对象的定义与调用、匿名函数的定义与调用、闭包

提到闭包总给人很高深的感觉,网上的例子也数不胜数.但是我发现相当一部分并不容易理解.根据我的观察,是因为这些例子把标题中提到的概念糅杂在了一起,往往越看越糊涂.所以我希望化整为零,拆成简单例子来解释. 1.先看作用域: JavaScript作用域只有两种--全局作用域和函数内作用域,没有代码块作用域.示例: function loop(){ for(var i=0;i<5;i++){ //doSomething; } alert(i); } loop(); //执行函数结果为5. 尽管变量i已经

C#基础知识-函数的定义和调用(五)

函数也可以称为方法,可以很方便的把一些行为封装到函数里面,当调用这一函数时会把函数块里面的代码按照顺序执行,方法可以有多种形式,有无参数,有无返回值等. 1. 函数的定义   函数定义的基本格式: static(静态修饰符-可选) + 返回值类型 + 函数名称 +(参数列表) static void Function1 ( ) { Console.Write("我是一个无参.无返回值的函数"); } 上面这个函数的访问修饰符为(在文章最后会讲到修饰符定义),返回值为void 函数名为F

def函数的定义及调用

本文主要介绍了函数的定义及如何调用,具体如下代码: 代码: #!/usr/bin/env python# -*- coding:utf-8 -*-def p():    while True:        time1=raw_input('print input now time:')        if time1>'0' and time1<'12':             print 'Good morning!'        elif time1>='12' and tim

Swift函数的定义

//: Playground - noun: a place where people can play import Cocoa //基本的函数 //*******************************************无参无返回值的函数 func first(){ print("这是我写的第一个函数") } //调用函数, //PS 小括号不可以省略,将函数赋值给其他属性才可这么做 first() //********************************

JS函数的定义与调用方法

原文:http://www.cnblogs.com/mq0036/p/3934867.html JS函数调用的四种方法:方法调用模式,函数调用模式,构造器调用模式,apply,call调用模式 1.方法调用模式:先定义一个对象,然后在对象的属性中定义方法,通过myobject.property来执行方法,this即指当前的myobject 对象.var blogInfo={ blogId:123, blogName:"werwr", showBlog:function(){alert(

Swift函数的定义建议

/* Swift中函数命名的智慧 */ // 1.一般情况下, 我们写一个函数是这么写的 func sayHello(name: String , greeting: String) { print("\(greeting), \(name)") } // 调用的时候是这样的, 这个函数这样读起来并不是很符合人类的阅读习惯 sayHello("Rinpe", greeting: "Hello") // 2.下面是对这个函数进行修改 func sa