[Day 18] -『 GO语言学习笔记』- 核心型别(IV)

以下笔记摘录自『 The Go Workshop 』。

接续上一篇的学习笔记

其实可以直接使用for range来处理rune,因为Go语言会自动把for i 走访runes转成for range回圈。

package main

import "fmt"

func main() {
	username := "Ako sa máš"
	runes := []rune(username)
    
	for _, v := range runes {
	fmt.Print(string(v), " ")
	}
}

所以若要个别处理UTF-8字串的字元,可将字串转成rune型别切片、再用for range来走访就是最方便的做法。

Go 语言中,只要使用for range去走访多位元组编码字串,就可以避免读到无效的UTF-8字元了。

For example,

package main

import "fmt"

func main() {
	logLevel := "お元気ですか"
	for index, runeVal := range logLevel {
		fmt.Println(index, string(runeVal))
	}
}
///Output
0 お
3 元
6 気
9 で
12 す
15 か

记得习惯,如果字串需要计算长度或者撷取字元的话。就要先把它转换成rune,避免长度读取错误,导致後续更多错误发生。

nil值

nil值是Golang的特殊资料值,代表无值也无型别的一个状态。如果用nil值来计算的话,就会发生问题。我们常利用nil值来确认,比方说处理指标或error值时,都可以先行判断是不是nil值,也就是判断是否为空值。


<<:  [Day24] swift & kotlin 游戏篇!(6) 小鸡BB-游戏制作-线条绘制与弹跳动画

>>:  GCP Cloud Storage

DAY 7 Big Data 5Vs – Volume(容量) — Lake House & Database

如果有疑惑说:资料湖与资料仓储该如何选择呢? 其实它们并不冲突。 因为存放的资料不同,可以做的分析也...

[Day 21] - 初探永丰银行线上收款API - 实作我的收款API

昨晚在测试时遇到一个问题找了好久,就是我的QpayHelper这支程序里明明有用constructo...

Day 15 实作调色盘App(3/3)

今天我们把这个App完成~ 首先,先到我们的Main.storyboard 点击右上角 + ->...

本益比的误解

本益比很常被拿来当作买卖股票的依据,低本益比就是超值好股,赶快入场;高本益比就代表是股价太高了,不追...

【Day 05 】- 藏起来的 Module 还是被发现了QuO(基於暴力搜寻 PE Header 的方法与解法)

Agenda 资安宣言 测试环境与工具 前情提要 学习目标 技术原理与程序码 References ...