println(sayhello("anna"))
println(minusresult(1,10))
//无返回值
@H_502_0@func saygoodbye(name: String) {println("goodbye,\(name)")
@H_502_0@}println(saygoodbye("dave"))
let total = count("some arbitry")
println("\(total.vs) vowels and \(total.cs) consonants")
/*
func join(s1: String,s2: String,joiner:String) ->String {
return s1 + joiner + s2
}
println(join("hello","world",","))
*/
//每一个都有两个名字 比如 string和s1
@H_502_0@func join(string s1:String,tostring s2:String,withjoiner joiner:String) ->String { @H_502_0@ return s1 + joiner + s2 @H_502_0@} @H_502_0@println(join(string : "hello",tostring : "hi",withjoiner : ","))
//简写
//#作为局部外部参数名
@H_502_0@func containcharacter(#string : String,#charactertofind:Character) ->Bool { @H_502_0@ for character in string { @H_502_0@ if character == charactertofind { @H_502_0@ return true @H_502_0@ } @H_502_0@ }return false
@H_502_0@} @H_502_0@let containasvee = containcharacter(string: "asdada",charactertofind:"a" )println(containasvee)
println(str1)
//joiner有默认值 所以下面要写上
@H_502_0@func join(s1:String,s2:String,joiner: String = " ")->String { @H_502_0@ return s1 + joiner + s2 @H_502_0@} @H_502_0@let str3 = join("hello","world",joiner:"-")println(str3)
//可变参数
@H_502_0@func mean(numbers:Double...)->Double { @H_502_0@ var total:Double = 0 @H_502_0@ for number in numbers { @H_502_0@ total += number @H_502_0@ } @H_502_0@ return total / Double(numbers.count) @H_502_0@}println(mean(1.1,2.2,3.1,4.5))
println(mean2(2.3,5.4))
/*
func alignright(var string:String,count: Int,pad:Character) ->String {
let amounttopad = count - count(string)
for
*/
let label = "The width is"
@H_502_0@let width = 94 @H_502_0@let widthLabel = label + String(width)println(widthLabel)
//作为输入输出参数时
swaptwoints(&someint,&anotherint)
println("someint is now \(someint),and anotherint is now \(anotherint)")
/*
let interestingnumbers = [
"prime":[2,3,5,7,11,13],
"fibonacci":[1,1,2,8],
"square":[1,4,9,16,25],
]
var largest = 0
for (kind,numbers) in interestingnumbers {
for number in numbers {
if number > largest {
largest = number
}
}
}
println(largest)
var n = 2
while n < 100 {
n = n * 2
}
print(n)
var m = 2
do {
m = m * 2
}while m < 100
print(m)
var firstforloop = 0
for i in 0..<4 {
firstforloop += i
}
println(firstforloop)
//使用..<创建的范围不包含上界,如果想包含的话需要使用...。
func calculateStatistics(scores: [Int]) -> (min: Int,max: Int,sum: Int) {
var min = scores[0]
var max = scores[0]
var sum = 0
if score > max {
max = score
} else if score < min {
min = score
}
sum += score
}
return (min,max,sum)
}
let statistics = calculateStatistics([5,100,9])
print(statistics.sum)
print(statistics.2)
func returnFifteen() -> Int {
var y = 10
func add() {
y += 5
}
add()
return y
}
returnFifteen()
func makeIncrementer() -> (Int -> Int) {
func addOne(number: Int) -> Int {
return 1 + number
}
return addOne
}
var increment = makeIncrementer()
increment(7)
*/
//函数类型:1,定义函数,2,定义函数类型变量或常量3,给函数类型赋值
@H_502_0@func addtowints(a : Int,b: Int) -> Int { @H_502_0@ return a + b @H_502_0@}
mathfunction = addtowints // 赋值
println("result:\(mathfunction(2,3))")
println(mathfunction2(2,5))
printmathresult(addtowints,1,2)
return backwards ? stepbackward : stepForward
@H_502_0@} @H_502_0@var currentvalue = 3 @H_502_0@let movenearertozero = choosestepfunction(currentvalue > 0)println("movenearertozero:\(movenearertozero)")
answer *= base
@H_502_0@}println(answer)
println("while index is \(va)")
@H_502_0@ va++ @H_502_0@}