// 方法练习package mainimport "fmt"type Test struct {}// 编写 Test 的方法func (t Test) print() {    for i := 0; i < 10; i++ {        for i := 0; i < 8; i++ {            fmt.Printf("*")        }        fmt.Println()    }}// 方法接收参数func (t Test) print2(m int, n int) {    for i := 0; i < m; i++ {        for i := 0; i < n; i++ {            fmt.Printf("*")        }        fmt.Println()    }}// 方法接收参数,并返回值func (t Test) print3(m float64, n float64) float64 {    return m * n}// 指针接收者 方法里判断奇数偶数func (t *Test) JudgeNum(n int) {    if n%2 == 0 {        fmt.Printf("%v是偶数 \n", n)    } else {        fmt.Printf("%v是奇数 \n", n)    }}// 方法接收参数,并打印指定字符func (t Test) print4(m int, n int, sign string) {    for i := 0; i < m; i++ {        for i := 0; i < n; i++ {            fmt.Print(sign)        }        fmt.Println()    }}// 实现一个四则运算的方法type Calc struct {    Num1 float64    Num2 float64}func (calc *Calc) CalcMethod(opt string) float64 {    var res float64    switch opt {    case "+":        res = calc.Num1 + calc.Num2    case "-":        res = calc.Num1 - calc.Num2    case "*":        res = calc.Num1 * calc.Num2    case "/":        res = calc.Num1 / calc.Num2    default:        fmt.Println("运算符输入有误")    }    return res}func main() {    fmt.Println("hello")    var t Test    t.print()    // 方法传值    var t2 Test    t2.print2(2, 5)    // 方法传值并返回    var t3 Test    multiply := t3.print3(2.2, 5.5)    fmt.Println("multiply = ", multiply)    // 实现方法判断奇数还是偶数    var t4 Test    t4.JudgeNum(4)    (&t4).JudgeNum(5)    // 打印指定字符    var t5 Test    t5.print4(3, 6, "$")    // 四则运算    var calc Calc = Calc{        Num1: 10,        Num2: 2,    }    res := calc.CalcMethod("/")    fmt.Println("res = ", res)}