条件和循环

Go条件与循环

条件

func TestIf(t *testing.T){
	//if 支持Go语言函数的多返回值
	//if两段的写法
	if a:=1 == 1; a{
		t.Log("1==1")
	}else {

	}

	/*
		//多返回值,接受错误,判断无错的情况下执行的代码
		if v,err := someFun();err == nil{
			t.Log("1==1")
		}
	*/
}

循环

func TestWhileLoop(t *testing.T){
	n := 0
	//循环
	for n < 5{
		t.Log(n)
		n++
	}

	//死循环
	for  {
		t.Log(n)
		n++
	}
}

func TestSwitch(t *testing.T){
	//Go的Switch不限制位常量或者整数 字符串也行
	/*
		1.Go默认有break,Go不需要用break来明确退出一个case
		2.case后面又多个元素,命中一个就进入
		3.单个case中可以出现多个结果选项,使用逗号分隔
		4.可以不设定switch之后的条件表达式,在这种情况下,整个switch和if/else逻辑作用相同
	*/


	/*
		//通过switch简化复杂的if/else
		switch  {
		case 0 <= Num && Num <=3:
			fmt.Println("0-3")
		case 4 <= Num && Num <=6:
			fmt.Println("4-6")
		case 7 <= Num && Num <=9:
			fmt.Println("7-9")
		}
	*/
	for i:=0;i<5;i++{
		switch i{
		//命中任何一个项皆可
		case 0,2:
			t.Log("Even")
		case 1,3:
			t.Log("Odd")
		default:
			t.Log("its is not 0-3")
		}
	}
}

上一篇:golang的testing包使用


下一篇:Python numpy.testing.assert_allclose函数方法的使用