package main
import (
   "fmt"
   "strconv"
   "strings"
)
// 字符串遍历
func bL(str string) {
   fmt.Println(len(str)) // 字节长度
   // for range 遍历
   for i, ch := range str{
      fmt.Printf("%d:%c", i, ch)
   }
   fmt.Println("--------------")
   for i, ch := range []byte(str){
      fmt.Println(i, ch)
   }
   fmt.Println("-------------")
   for i, ch := range []rune(str){
      fmt.Println(i, ch)
   }
}
// strings包
func testStrings()  {
   s := "我爱go语言"
   fmt.Println(strings.Contains(s,"我爱"))
   fmt.Println(strings.HasPrefix(s,"我爱"))
   fmt.Println(strings.HasSuffix(s,"go语言"))
   fmt.Println(strings.Count(s, "我"))
   fmt.Println(strings.Index(s, "爱"))
   s1 := "abc def ggg 我"
   fmt.Println(strings.Fields(s1)) // 按空格分割
   fmt.Println(strings.Split(s, "爱")) // 按指定字符分割
   s2 := "my home isjiangxi"
   fmt.Println(strings.Title(s2)) // 单词首字母大写
   fmt.Println(strings.ToLower(s2))
   fmt.Println(strings.ToUpper(s2))
   fmt.Println(strings.Trim(s2, "mix"))  // 去掉两端所有的m i x 字符
   fmt.Println(strings.TrimSpace(s2)) // 去掉两段空白符
   fmt.Println(strings.Join([]string{"a", "b", "c"}, ":"))
}
func main()  {
   if age, err := strconv.Atoi("10"); err == nil{
      fmt.Println(age)
   }
   if age, err := strconv.ParseInt("20", 10, 64); err == nil{
      fmt.Println(age)
   }
   if age, err := strconv.ParseBool("f"); err == nil{
      fmt.