blob: a1d01a01f1ec70f11c6e317800da9d7cfcfd607d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
package main
import (
"fmt"
"time"
)
var amap map[rune]rune = map[rune]rune{
'a': 'a',
'b': 'b',
'c': 'c',
'd': 'd',
'e': 'e',
'f': 'f',
'g': 'g',
}
func runswitch(a rune) rune {
i := 0
switch {
case i == 0 && a == 'a':
return a
case i == 0 && a == 'b':
return a
case i == 0 && a == 'c':
return a
case i == 0 && a == 'd':
return a
case i == 0 && a == 'e':
return a
case i == 0 && a == 'f':
return a
case i == 0 && a == 'g':
return a
}
return a
}
func runmap(a rune) rune {
return amap[a]
}
func main() {
now := time.Now()
for i := 0; i < 1000000; i++ {
runswitch('g')
}
fmt.Println(time.Since(now))
now = time.Now()
for i := 0; i < 1000000; i++ {
runmap('g')
}
fmt.Println(time.Since(now))
}
|