首页 > 其他分享 >Go语言入门2(流程控制,string)

Go语言入门2(流程控制,string)

时间:2023-04-02 10:56:44浏览次数:30  
标签:case string fmt tmpA Println Go 90 main 入门

流程控制

选择结构(分支语句)

​ 因为switch只能匹配固定值,推荐使用if-else做条件筛选

if-else判断

package main

import "fmt"

func main() {
	var tmpA int
	fmt.Scanln(&tmpA)
	if tmpA >= 90 {
		fmt.Println("tmpA >= 90")
	} else if tmpA < 90 && tmpA >= 60 {
		fmt.Println("tmpA < 90 && tmpA >= 60")
	} else {
		fmt.Println("tmpA < 60")
	}
}

switch判断

​ switch语句执行的过程从上至下,知道找到匹配项,匹配项后面也不需要再加break,case之后默认添加break

 package main

import "fmt"
// switch 后面如果什么都不跟,就会默认为bool类型,值为true
func main() {
	var tmpA int
	fmt.Scanln(&tmpA)
	switch tmpA {
	case 90:
		fmt.Println("tmpA = 90")
	case 80:
		fmt.Println("tmpA = 80")
	default:
		fmt.Println("default")
	}
}

fallthrough穿透(和break相反)

​ switch默认情况下匹配成功后就不会执行其他case,如果我们需要执行后面的case,可以使用fall through穿透实现,它会强制执行后面的语句,并不会判断后面case表达式是否匹配

package main

import "fmt"

func main() {
	var tmpA int
	fmt.Scanln(&tmpA)
	switch tmpA {
	case 90:
		fmt.Println("tmpA = 90")
		fallthrough
	case 80:
		fmt.Println("tmpA = 80")
		fallthrough
	default:
		fmt.Println("default")
	}
}

循环结构(for循环)

package main

import "fmt"

func main() {
    // 循环的条件判断没有括号,同样break和continue使用同c语言一样
	for i := 0; i < 10; i++ {
		if i == 4 {
			continue // 结束当前循环
		} else if i == 6 {
			break    // 结束整个循环
		}
		fmt.Print(i) 
	}
}

string

​ go语言中的字符串是一个字节的切片,可以通过将其内容封装在“”中来创建字符串,go语言中字符串编码兼容Unicode,且使用UTF-8编码,是一些字节的集合

package main

import "fmt"

func main() {
	// string 是不能被单独修改里面的某一位的
	str := "string example"
	fmt.Println(str)
	// 获取字符串长度
	fmt.Println("字符串长度为: ", len(str))
	// 获取指定的字节(直接获得的是Ascll编码)
	fmt.Println("获取指定的字节:", str[2])
	// 格式化输出指定字节
	fmt.Printf("获取指定的字节: %c \n", str[2])
	// 使用for循环遍历字符串
	for i := 0; i < len(str); i++ {
		fmt.Printf("遍历字符串: %c\n", str[i])
	}
	// for range循环,用于遍历数组以及切片....
	// i:字符串下标
	// v:当前下表对应的值,可以直接使用
	for i, v := range str {
		fmt.Printf("i = %d,v = %c \n", i, v)
	}
}

标签:case,string,fmt,tmpA,Println,Go,90,main,入门
From: https://www.cnblogs.com/te9uila/p/17280049.html

相关文章

  • Tomcat 入门实战(4)--Tomcat 集群 Session 复制
    本文主要介绍在Tomcat集群中如何进行Session复制,文中所使用到的软件版本:Centos7.9.2009、Java1.8.0_321、Tomcat8.5.87。1、快速配置取消conf/server.xml文件中的以下注释来启用集群:<ClusterclassName="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>使用上述配......
  • 一名C++程序员的Rust入门初体验
    作者最近尝试写了一些Rust代码,本文主要讲述了对Rust的看法和Rust与C++的一些区别。背景S2在推进团队代码规范时,先后学习了盘古编程规范,CPPcoreguidelines,进而了解到clang-tidy,以及GoogleChrome在安全方面的探索。C++是一个威力非常强大的语言,但是能力越大,责任越大,它......
  • 洛谷 P9009 [入门赛 #9] 牵连的世界 (Hard Version) 题解
    P9009[入门赛#9],真9。这是一道hack题,即你需要自造符合题意的数据使题中所给程序无法AC。Task01看数据范围知一切,显然有\(-2\times10^9\lea_i\le2\times10^9\),因此\(a_i\)可能为负数。注意C/C++中的取模%(mod)运算实质上是为取余运算(rem)对于整型数a,b来说......
  • Django笔记十三之select_for_update等选择和更新等相关操作
    本篇笔记将介绍update和create的一些其他用法,目录如下:get_or_createupdate_or_createselect_for_updatebulk_createbulk_update1、get_or_create前面我们介绍过get()和create()的用法,那么get_or_create()的意思很简单,就是获取或者创建,如果存在就返回,不存在就......
  • MongoDB 架构
    优质博文:IT-BLOG-CN一、存储数据格式MongoDB作为主流的NoSQL数据库之一,使用面向文档的数据存储方式,将数据以JSON和BSON的方式存储在磁盘中。BSONBinaryJSON是一种基于JSON的二级制序列化格式,用于MongoDB存储文档并进行远程过程调用,作为网络数据交互的一种存储形式,类似于Prot......
  • Flask框架入门
    Flask框架也是Python的同步web框架,Flask是一个基于Python开发并且依赖jinja2模板和WerkzeugWSGI服务的一个微型框架顺便总结一下Python的同步web框架有Django(大而全,适合大型网站开发)、Flask(小而精,适合小型网站开发);异步web框架有fastapi和sanic。接下来咱详细的研究一下flas......
  • golang蒙特卡洛树算法实现五子棋AI
    已经实现蒙特卡洛树算法的通用逻辑,只需要对应结构体实现相关接口就可以直接使用该算法。优化算法主要优化GetActions生成下一步动作,要尽可能少,去掉无意义的动作。以及优化ActionPolicy从众多动作挑选比较优秀的动作。对应五子棋就是执行该动作后当前局面评分最高。packagemain......
  • django 中model 的序列换
    方法一:from django.core import serializers ret = models.BookType.objects.all() data = serializers.serialize("json",ret) 方法二:当只有一个object时:fromdjango.forms.modelsimportmodel_to_dictdata=model_to_dict(yourmodelobject)......
  • 【入门】Go语言排序算法详解
    1、冒泡排序冒泡排序是一种简单的排序算法,它重复地遍历要排序的列表,比较相邻的两个元素,并在必要时交换它们的位置,直到没有任何一对元素需要交换为止。该算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。packagemainimport"fmt"//我们定义了一个名为`bu......
  • HJ70_矩阵乘法计算量估算_入门栈使用的典型题
    反思:这题咋一看不难,但是越做坑越多,按照一开始不完善的思路无法完全通过测试。参看高赞答案,代码行数特少。但是没考虑一个括号中有三个矩阵的情况。思路:1、判断哪两个矩阵开始相乘的条件:遇到“)”时,该字符前两个矩阵开始相乘。把相乘后矩阵行列数组压入栈栈中。该题默认不存在(A(......