数据类型

不同类型的内存样式图

append,切片添加元素

清空切片的3种方法

清空切片的2种方法

查看变量类型

使用 fmt.Printf

package main

import "fmt"

func main() {
str := "Hello world"
fmt.Printf("%T", str)
}

使用 reflect.TypeOf

package main

import (
"fmt"
"reflect"
) func main() {
str := "Hello world"
fmt.Println(reflect.TypeOf(str))
}

switch

只适用于 switch 语句,而且变量必须是interface类型

package main

import "fmt"

var str interface{}
str = "Hello world" switch str.(type) {
case string:
fmt.Println("string")
case int:
fmt.Println("int")
default:
fmt.Println("other)
}

Reference

Golang数据结构的更多相关文章

  1. golang数据结构之总结

    golang语言的一些数据结构实现,包括: 队列(单队列.循环队列) 链表(单链表.双链表.循环链表(解决约瑟夫环问题)) 栈(实现加减乘除计算) 递归之迷宫问题 哈希表(员工管理系统) 树(三种遍历 ...

  2. golang数据结构和算法之BinarySearch二分查找法

    基础语法差不多了, 就需要系统的撸一下数据结构和算法了. 没找到合适的书, 就参考github项目: https://github.com/floyernick/Data-Structures-and ...

  3. Golang 数据结构

    每种语言在实现数据结构有些许不同.go 是如何实现的呢? 1. 数组 Array go 中数组是相同的元素组成的集合,计算机会为数组分配一段连续的内存来保存元素,可以利用索引快速访问元素. go 中数 ...

  4. golang数据结构之队列

    队列可以用数组或链表实现,遵从先入先出. 目录结构: 在main中调用queue包中的属性和方法,如何调用参考另一篇文章: https://www.cnblogs.com/xiximayou/p/12 ...

  5. golang数据结构之循环链表

    循环链表还是挺有难度的: 向链表中插入第一条数据的时候如何进行初始化. 删除循环链表中的数据时要考虑多种情况. 详情在代码中一一说明. 目录结构如下: circleLink.go package li ...

  6. golang数据结构之树的三种遍历方式

    tree.go package tree import ( "fmt" ) type TreeNode struct { ID int Val int Left *TreeNode ...

  7. golang数据结构之散哈希表(Hash)

    hash.go package hash import ( "fmt" ) type Emp struct { ID int Name string Next *Emp } //第 ...

  8. golang数据结构之递归解决迷宫问题

    简单来说:递归就是函数/方法自己调用自己,只是每次传入不同的变量. 递归可以解决各种数学问题:n皇后问题.阶乘问题.汉诺塔.迷宫问题.球和篮子问题等等: maze.go package maze im ...

  9. golang数据结构之利用栈求计算表达式(加减乘除)

    例如:3+2*6-2 先定义两个栈,一个为数值栈,一个为运算符栈: stack.go package stack import ( "errors" "fmt" ...

  10. golang数据结构之栈

    stack.go package stack import ( "errors" "fmt" ) type Stack struct { MaxTop int ...

随机推荐

  1. POJ I Think I Need a Houseboat

    I Think I Need a Houseboat 思路:距离问题,一道水题 代码: #include <iostream> #include <cmath> using n ...

  2. Xcode常用&开发常用

    p.p1 { margin: 0; font: 12px "Helvetica Neue" } p.p2 { margin: 0; font: 12px "Helveti ...

  3. 类继承(c++ primer plus)课后习题

    第一题: // base class class Cd { // represents a CD disk private: char performers[50]; char label[20]; ...

  4. Jmeter九、jmeter中的函数和beanshell

    beanshell  松散类型的脚本语言 可在里面自定义函数

  5. P77 3.12

    #P77 3.12 #一年365天,初始水平值为1.0,每工作一天水平增加N, #不工作时水平不下降,一周连续工作4天,请编写程序运算 #结果并填写表格 n = 1.0 for j in range ...

  6. 初识 Linux Shell

    初识 Linux Shell 本书学习的第一步,就是要找到 Linux 终端的所在位置.目前较常见的图形化终端有 Konsole.Gnome terminal.xterm 等几种.一般安装后在各个发行 ...

  7. 3、一个简单的Java应用程序

    /* 1.Java中区分大小写,如果出现了大小写拼写错误,例如将main拼写成Main,则程序将无法运行. 2.关键字public成为访问修饰符,用来控制程序的其他部分对这段代码的访问级别. 3.关键 ...

  8. 时序图,E-R图,数据流程图

    其中OSC是在线客服     数据流程图

  9. Windows下安装多个Redis实例

    1.在Redis 目录下复制redis.windows-service.conf文件,建议命名规则redis.windows-service-port.conf,我们以6380端口为例. 2.打开re ...

  10. 关于VScode里TS文件内引入插件没有提示内置属性和方法这件事

    前几天使用VScode + Vue + Vite + Ts开发项目 由于自己手残 把VScode设置文件的代码做了一些修改 导致TS文件引入的插件没有提示了!! 几经折腾下 终于靠自己解决了! 不多说 ...