package main
import "fmt"
import "encoding/json" type Human struct{
Name string
Home string
Like string
} type Info struct{
One string
Two string
}
type TestInt int //自定义数据类型,比如自定义的TestInt所代表的类型是int type Jo struct{ //自定义数据类型,比如自定义的Jo所代表的类型是struct
Human //复合共同部分
Father string
Mather string
ArrInfo []Info
MyInfo Info
} func (h Human) SayName(){
print(h.Name)
} type TestOne interface{
SayName()
} //interface{}是一种比较通用的类型,可以接受任何类型的数据 func main(){
var abcd []Human
for i:=0; i<6;i++{
abcd=append(abcd,Human{
Name:"sdklfjsdf",
Home:"sdkljfds",
Like:"sdlkfsdljf",
})
}
print(abcd)
var ae interface{}
ae=abcd
print(ae)
testTypeA() } func testTypeA(){
var i TestOne //创建变量需要声明类型,类型可以自定义也可以go语言提供的基本类型
var b Human
b.Name="slkdjfsjd"
b.Home="slkdjfds"
b.Like="slkdfjsdjf"
i=b //interface{} i可以接受任何数据类型,所以这里可以接受b的数据
i.SayName()
print(i)
var jo Jo
jo.Father="slkdjfsd"
jo.Mather="skldfjsdj"
jo.Human=Human{ //对共同部分的赋值需要这样写
Name:"skldjfsdf",
Home:"slkdjfds",
Like:"slkdjfsjdf",
}
jo.Name="4654645654" //这里可以直接引用复用的对象,当然也可以用以上的方式赋值
jo.ArrInfo=[]Info{ //值得注意的是对变量赋值,所赋的值需要先声明类型再定义值
{One:"slkdjfsdf",Two:"jskdljfs"},
{One:"s46465465lkdjfsdf",Two:"jskdljfs"},
}
jo.MyInfo=Info{
One:"sdfsdjfkl",
Two:"sdlkfjsdfj",
}
json,_:=json.Marshal(jo)
print(string(json))
var aint TestInt
aint=46465
print(aint)
amap:=make(map[string]interface{}) //map的值不一定是固定某种类型的数据,所以用interface{}
amap["Father"]=jo.Father
amap["Mather"]=jo.Mather
amap["Name"]=jo.Name
amap["ArrInfo"]=jo.ArrInfo
amap["MyInfo"]=jo.MyInfo
print(amap)
} func print(a interface{}){
fmt.Println(a)
}

  

go 数据类型type尝试的更多相关文章

  1. PythonStudy——数据类型 Type of data

    数据类型:信息存在的状态为什么要来描述事物的具体状态:不同的事物需要不同的状态加以描述可以达到描述的最优化 python中有哪些常见的数据类型 1.整型 num = 10000000000000000 ...

  2. [Hive - Tutorial] Type System 数据类型

    数据类型Type System Hive supports primitive and complex data types, as described below. See Hive Data Ty ...

  3. 在PostgreSQL自定义一个“优雅”的type

    是的,又是我,不要脸的又来混经验了.我们知道PostgreSQL是一个高度可扩展的数据库,这次我聊聊如何在PostgreSQL里创建一个优雅的type,如何理解优雅?大概就是不仅仅是type本身,其它 ...

  4. python学习日记(2/3区别,环境,变量,数据类型以及简单习题)

    Python2 与 python3 的区别: python2源码不标准,混乱,重复代码太多 python3统一标准,去除重复代码 python2的默认编码方式是ASCII码,不能识别中文.解决方法:在 ...

  5. Python变量与基本数据类型

    Python变量与基本数据类型 前言 好了,从本章开始将正式进入Python的学习阶段.本章主要介绍的是Python变量与基本数据类型的认识,这些都是最基本的知识并且必须要牢靠掌握在心中. 注释 学习 ...

  6. 《Redis入门指南(第二版)》读书思考总结之Redis五大数据类型

    热身:系统级命令 1. 获得符合规则的键名列表 KEYS pattern 模式匹配 产品的缓存:product+"."+....;  => keys product* 订单的 ...

  7. Oracle存储过程-自定义数据类型,集合,遍历取值

    摘要 Oracle存储过程,自定义数据类型,集合,遍历取值 目录[-] 0.前言 1.Packages 2.Packages bodies 3.输出结果 0.前言 在Oracle的存储过程中,可能会遇 ...

  8. 一句python,一句R︱模块导入与查看、数据读写出入、数据查看函数、数据类型、遍历文件

    先学了R,最近刚刚上手python,所以想着将python和R结合起来互相对比来更好理解python.最好就是一句python,对应写一句R. pandas中有类似R中的read.table的功能,而 ...

  9. 从0开始的Python学习002python的数据类型

    在创建变量的时候不用声明数据类型 # 创建变量 a = 10 # 打印变量值 print(a) 结果如下: 这种感觉和Java有很大的不同,感觉python很神奇,数据的类型是python自己决定的. ...

随机推荐

  1. S老师 C#编程数据结构篇 学习

    直接插入排序                                                       冒泡排序 简单选择排序 线性表: using System; using Sy ...

  2. VS中实时获取SVN的版本号并写入到AssemblyInfo.cs中

    在开发项目时,需要知道当前发布的到底是哪个版本,比较好的方式就是获取SVN的版本来作为项目的版本.项目版本一般由主版本.次版本.内部版本.修改版本四个部分组成,我们获取的SVN版本就作为修改版本即可. ...

  3. CIDR合并

    code #include <iostream> #include <list> #include <sstream> #include <vector> ...

  4. php格式化数字:位数不足前面加0补足

    <?php $var=sprintf("%02d", 2);//生成2位数,不足前面补0 echo $var;//结果为02 ?> 參考:https://blog.cs ...

  5. MATLAB:SMPD无法启动

    可以键入 distcomp.feature( 'LocalUseMpiexec', false )命令运行后,然后再启动程序.

  6. 商品和订单中使用MQ

    一.将Product服务增加到配置中心 1.添加引用 <dependency> <groupId>org.springframework.cloud</groupId&g ...

  7. 手写Spring框架学习笔记

    以下是咕泡公开课的学习笔记 一.创建工程springdemo 二.在pom中配置servlet <dependency> <groupId>javax.servlet</ ...

  8. 导入导出Excel文件

    搭建环境 先新建web project ,然后Add Struts Capabilties: 下载导入导出Excel所需的jar包: poi-3.8-20120326.jar包  :  http:// ...

  9. [转]windows环境下使用virtualenv对python进行多版本隔离

    windows环境下使用virtualenv对python进行多版本隔离 最近在用python做一个文本的情感分析的项目,用到tensorflow,需要用python3的版本,之前因为<机器学习 ...

  10. Python依赖打包发布详细

    http://www.cnblogs.com/mywolrd/p/4756005.html 将Python脚本打包成可执行文件   Python是一个脚本语言,被解释器解释执行.它的发布方式: .py ...