go 数据类型type尝试
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尝试的更多相关文章
- PythonStudy——数据类型 Type of data
数据类型:信息存在的状态为什么要来描述事物的具体状态:不同的事物需要不同的状态加以描述可以达到描述的最优化 python中有哪些常见的数据类型 1.整型 num = 10000000000000000 ...
- [Hive - Tutorial] Type System 数据类型
数据类型Type System Hive supports primitive and complex data types, as described below. See Hive Data Ty ...
- 在PostgreSQL自定义一个“优雅”的type
是的,又是我,不要脸的又来混经验了.我们知道PostgreSQL是一个高度可扩展的数据库,这次我聊聊如何在PostgreSQL里创建一个优雅的type,如何理解优雅?大概就是不仅仅是type本身,其它 ...
- python学习日记(2/3区别,环境,变量,数据类型以及简单习题)
Python2 与 python3 的区别: python2源码不标准,混乱,重复代码太多 python3统一标准,去除重复代码 python2的默认编码方式是ASCII码,不能识别中文.解决方法:在 ...
- Python变量与基本数据类型
Python变量与基本数据类型 前言 好了,从本章开始将正式进入Python的学习阶段.本章主要介绍的是Python变量与基本数据类型的认识,这些都是最基本的知识并且必须要牢靠掌握在心中. 注释 学习 ...
- 《Redis入门指南(第二版)》读书思考总结之Redis五大数据类型
热身:系统级命令 1. 获得符合规则的键名列表 KEYS pattern 模式匹配 产品的缓存:product+"."+....; => keys product* 订单的 ...
- Oracle存储过程-自定义数据类型,集合,遍历取值
摘要 Oracle存储过程,自定义数据类型,集合,遍历取值 目录[-] 0.前言 1.Packages 2.Packages bodies 3.输出结果 0.前言 在Oracle的存储过程中,可能会遇 ...
- 一句python,一句R︱模块导入与查看、数据读写出入、数据查看函数、数据类型、遍历文件
先学了R,最近刚刚上手python,所以想着将python和R结合起来互相对比来更好理解python.最好就是一句python,对应写一句R. pandas中有类似R中的read.table的功能,而 ...
- 从0开始的Python学习002python的数据类型
在创建变量的时候不用声明数据类型 # 创建变量 a = 10 # 打印变量值 print(a) 结果如下: 这种感觉和Java有很大的不同,感觉python很神奇,数据的类型是python自己决定的. ...
随机推荐
- redmine和jenkins的ldap登录设置
工具: softeera LDAP browser 流程: Authentication modes » test Name * Host * Port * LDAPS Account Passwo ...
- [转]MyBatis中resultType与resultMap区别
MyBatis中关于resultType和resultMap的具体区别如下: MyBatis中在查询进行select映射的时候,返回类型可以用resultType,也可以用resultMap.resu ...
- node api 之:Buffer
在 ECMAScript 2015 引入 TypedArray 之前,JavaScript 语言没有读取或操作二进制数据流的机制. Buffer 类被引入作为 Node.js API 的一部分,使其可 ...
- fastjson总结
1,文件的转成字节数组byte[]的时候,可以直接用fastjson序列化和反序列化 2,用@RequestBody接受json的时候,content-type是否已经application/json ...
- Java 解密错误InvalidKeyException: Illegal key size解决方法
做解密操作,出现如下错误 java.security.InvalidKeyException: Illegal key size // 设置解密模式为AES的CBC模式 Cipher cipher = ...
- tk简单使用
# 引入tk import tkinter as tk class UserLogin(object): """ 初始化窗口 """ def ...
- locate命令详解
Linux locate命令 locate(locate) 命令用来查找文件或目录. locate命令要比find -name快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/ml ...
- Visual Studio搭建Python开发环境
一.搭建开发环境 1.创建工程: 2.下载环境: 创建好工作以后,点击运行,就会出现下面这个界面,然后点击下载,并安装 http://jingyan.baidu.com/article/fec4bce ...
- windows下vscode修复c++找不到头文件
因为原博客太长将部分内容分开 vscode找不到头文件的问题是由于windows下vscode默认的编译器是微软的MSVC(vs使用的编译器)的头文件路径 如果你没有安装vs肯定会因为找不到头文件而报 ...
- Bitmap BitmapData
var sp:Sprite=new Sprite(); sp.graphics.beginFill(0xffccdd); sp.graphics.drawRect(0,0,100,100); sp.g ...