- 博客(7)
- 收藏
- 关注
原创 《Rust 语言程序设计》笔记第五章-枚举和模式匹配
五、枚举和模式匹配 1、枚举 枚举定义 enum IpAddrKind { V4, V6, } 创建实例: let four = IpAddrKind::V4; let six = IpAddrKind::V6; 函数签名的参数为枚举类型,那该枚举类型的成员都能传入: fn route(ip_type: IpAddrKind) { } route(IpAddrKind::V4); route(IpAddrKind::V6); 枚举类型可以作为结构体的字段,同时,枚举成员也可以是其他类型
2021-11-19 13:36:48
423
原创 《Rust 语言程序设计》笔记第四章-结构体
四、结构体 1、定义并实例化结构体 定义和实例化 定义 定义结构体,需要使用 struct 关键字并为整个结构体提供一个名字。结构体的名字需要描述它所组合的数据的意义。 struct User { username: String, email: String, sign_in_count: u64, active: bool, } 实例化 通过为每个字段指定具体值来创建这个结构体的 实例。创建一个实例需要以结构体的名字开头,接着在大括号中使用 key: value 键-值
2021-10-31 14:24:54
161
原创 《Rust 语言程序设计》笔记第三章-所有权
文章目录三、所有权1、所有权概念所有权规则String 类型内存分配变量与数据交互的方式(一):移动变量与数据交互的方式(二):克隆所有权与函数返回值与作用域2、引用与借用引用可变引用悬垂引用3、slice字符串 slice字符串字面值就是 slice 三、所有权 1、所有权概念 所有权规则 Rust 中的每一个值都有一个被称为其 所有者(owner)的变量。 值在任一时刻有且只有一个所有者。 当所有者(变量)离开作用域,这个值将被丢弃。 String 类型 这里使用 String 作为例子,并专注于
2021-10-29 23:10:56
171
原创 给定数字k,m,找出第一个大于K并且可以整除m的数字(m为2的n次幂)
一、前言 今天在看 Golang 的 channel 源代码时,发现里面计算内存对齐中用了一个计算公式,觉得有点意思,就记录下来了。 Golang 在 channel 中设置的对齐大小是 8 字节,为了内存对齐,需要讲 channel 结构体的大小对齐到 8 的倍数,用到了这个公式。 二、计算过程 1、源码 const ( maxAlign = 8 // 内存 8 字节对齐 hchanSize = unsafe.Sizeof(hchan{}) + uintptr(-int(unsafe.Sizeo
2021-09-14 15:53:51
267
原创 MySQL常见知识点
一、数据库架构 存储:存储数据 程序实例:组织数据 存储管理:物理数据用逻辑形式表示 缓存机制:提高IO效率 SQL解析:解析SQL语句 日志管理:操作记录 权限划分:多用户管理 容灾机制 索引管理:优化查询效率 锁管理:支持并发 二、索引模块 ## 1、为什么要使用索引 数据量很少,不需要索引,但是数据量大,全表索引效率就很低。使用索引,提高查询速度。 2、什么信息能成为索引 主键、唯一键、普通键。 3、索引的数据结构 B+Tree 和 Hash结构。这
2021-03-29 16:40:22
135
原创 object类的equals方法详解以及与String类的比较
前言 今天学习到Object类时,看到了Object.equals方法是用于检查两个对象的引用是否相等,然后立马想到了这与String.equals相反,所以去看了一下源码。 对比 首先进Object.equals的源码瞄了一眼,发现确实是用于检查两个对象的引用是否相等,直接使用了==实现。 public boolean equals(Object var1) { return this == var1; } 然后打开了String.qeuals源码: public boolean
2021-02-25 23:26:05
817
原创 《Java核心技术卷I》阅读笔记——前言与第三章Java的基本程序设计结构
文章目录前言ch3-Java的基本程序设计结构(一) 数据类型1、整型2、浮点型3、三个特殊浮点数值4、浮点数的误差5、转义序列\u(二)变量1、变量名称(三)运算符1、模运算2、Math常用函数3、类型转换4、舍入5、枚举类型(四)字符串1、子串2、拼接3、不可修改性4、相同字符串判断5、空串与null6、码点与代码单元7、StringBuilder(五)输入输出1、读取输入2、文件输出3、文件读取4、异常(六)大数值1、BigInteger2、BigDecimal(七)数组1、初始化2、数组长度可为03
2021-01-29 23:18:13
259
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人