Go-11 Golang语言中if !条件{}结构整理的练习题

package main

// Golang匿名函数
// 这里是专门为if条件整理的练习题
/*	if !条件

	if !条件 {	// if (!条件) 整体为true,执行yyyyyy 反之执行NONONO---------此处简言之: if 判断为 true 执行yyyyyy
		return "yyyyyy"
	}
	return "NONONO"		---------此处简言之: if 判断为 false 执行NONONO

*/
import (
	"fmt"
	"strings"
)

func makeSuffixFunc(suffix string) func(string) string {
	var bol bool
	fmt.Println("查看一下布尔类型的默认值是什么:", bol) // 结果是:布尔类型的默认值为false
	return func(name string) string {
		fmt.Println(strings.HasSuffix(name, suffix)) // 这个strings.HasSuffix()函数属于bool类型,默认值也是false
		bol_res := strings.HasSuffix(name, suffix)
		if !bol_res { // if (!条件)整体为true,执行return name + suffix + "123",反之执行return name
			return name + suffix + "123"
		}
		return name
	}
}

func testBool() string {
	var bol bool
	if !bol { // if 整体条件为true,执行这里
		return "if 整体条件为true,执行这里"
	}
	return "if 整体条件为false,执行这里"
}

// 闭包进阶示例3:
func calc(base int)(func(int) int, func(int) int){
    add := func(i int) int {
        base += i
        return base
    }

    sub := func(i int) int {
        base -= i
        return base
    }
    return add, sub
}

func main() {
	jpgFunc := makeSuffixFunc(".jpg")
	txtFunc := makeSuffixFunc(".txt")
	fmt.Println(jpgFunc("test.jpg")) //test.jpg
	//fmt.Println(jpgFunc("test")) //test.jpg
	fmt.Println(txtFunc("test")) //test.txt
	a := 2
	b := 1
	fmt.Println("a,b的比较结果:", a == b) // a=1,b=1时,a==b的结果是true
	if !(a == b) {
		fmt.Println("true来true来true来")
	} else {
		fmt.Println("false来false来false来")
	}

	test := testBool()
	fmt.Println(test)
        fmt.Println()
        // 闭包进阶示例3的调用
        f1, f2 := calc(10)
        fmt.Println(f1(1), f2(2))  // 11 9
        fmt.Println(f1(3), f2(4))  // 12 8
        fmt.Println(f1(5), f2(6))  // 13 7

	/*	上面代码的全部执行结果如下所示:
		PS C:\Users\Zhaoshan.lu\go\DaDi> go run .\13.go
		查看一下布尔类型的默认值是什么: false
		查看一下布尔类型的默认值是什么: false
		true
		test.jpg
		false
		test.txt123
		a,b的比较结果: false
		true来true来true来
		if 整体条件为true,执行这里
  
                11 9
                12 8
                13 7
	
	*/
}


posted @ 2022-12-08 17:42  大海一个人听  阅读(71)  评论(0编辑  收藏  举报