文章目录
- 1.运算符
- 2.文件操作
- 3.接口
- 4.Packages
- 5.If else
- 6.For循环
1.运算符
func main() {
a, b := 3, 7
c := a + b
d := a - b
e := a * b
f := a / b
g := a % b
a++
a--
fmt.Println(c, d, e, f, g)
fmt.Println(a == b)
fmt.Println(a != b)
fmt.Println(a < b)
fmt.Println(a > b)
fmt.Println(a <= b)
fmt.Println(a >= b)
o, p := true, false
fmt.Println(o && p)
fmt.Println(o || p)
fmt.Println(!o)
fmt.Println(a & b)
fmt.Println(a | b)
fmt.Println(a ^ b)
fmt.Println(a << 2)
fmt.Println(b >> 1)
fmt.Println(^a)
k := 10
k += 5
fmt.Println(k)
k -= 3
fmt.Println(k)
k *= 2
fmt.Println(k)
k /= 4
fmt.Println(k)
k %= 2
fmt.Println(k)
}
2.文件操作
file, err := os.Open("a.txt")
if err != nil {
fmt.Println("Error", err)
return
}
defer file.Close()
scanner := bufio.NewScanner(file)
for scanner.Scan() {
fmt.Println(scanner.Text())
}
if err := scanner.Err(); err != nil {
fmt.Println("Error:", err)
}
3.接口
type 接口名 interface {
方法名1(参数列表1) 返回值列表1
方法名2(参数列表2) 返回值列表2
...
}
package main
import "fmt"
type Shape interface {
Area() float64
}
type Rectangle struct {
width float64
height float64
}
func (r Rectangle) Area() float64 {
return r.width * r.height
}
func main() {
var s Shape
s = Rectangle{width: 5, height: 3}
fmt.Println("Area of Rectangle:", s.Area())
}
4.Packages
package main
import (
"fmt"
"one/learnpackge"
)
func init() {
}
func main() {
fmt.Println("Simple interest calculation")
p := 1000.0
r := 11.0
t := 1.0
si := learnpackge.Calculate(p, r, t)
fmt.Println("Simple interest is", si)
}
package learnpackge
func init() {
fmt.Println("Simple interest pack initialized")
}
func Calculate(p float64, r float64, t float64) float64 {
interest := p * (r / 100) * t
return interest
}
5.If else
package main
import "fmt"
func main() {
num := 99
if num <= 50 {
fmt.Println(num, "is less than or equal to 50")
} else if num >= 51 && num <= 100 {
fmt.Println(num, "is between 51 and 100")
} else {
fmt.Println(num, "is greater than 100")
}
}
6.For循环
for i := 1; i <= 10; i++ {
if i%2 == 0 {
break
}
fmt.Printf("%d ", i)
}
fmt.Printf("\nline after for loop")
n := 5
for i := 0; i < n; i++ {
for j := 0; j <= i; j++ {
fmt.Print("*")
}
fmt.Println()
}
for i := 0; i < 3; i++ {
for j := 1; j < 4; j++ {
fmt.Printf("i = %d , j = %d\n", i, j)
}
}