- 博客(285)
- 资源 (6)
- 收藏
- 关注
原创 golang 面试-day88
参考答案及解析:false。在 Go 语言里面,^ 作为二元运算符时表示按位异或:对应位,相同为 0,相异为 1。例如,有我们熟悉的组合(3,4,5)、(6、8、10)等。1+6=7,这当然是相等的。你来试试分解下第二段代码的数学表达式。问题来了,下面代码输出什么,请简要说明。参考答案及解析:AD。
2024-08-09 08:52:32
349
原创 golang 面试-day87
参考答案及解析:false。在 Go 语言里面,^ 作为二元运算符时表示按位异或:对应位,相同为 0,相异为 1。例如,有我们熟悉的组合(3,4,5)、(6、8、10)等。1+6=7,这当然是相等的。你来试试分解下第二段代码的数学表达式。问题来了,下面代码输出什么,请简要说明。参考答案及解析:AD。
2024-08-09 08:51:45
241
原创 golang面试-day86
参考答案及解析:118。Go 语言里面,八进制数以 0 开头,十六进制数以 0x 开头,所以 Decade 表示十进制的 8。参考答案及解析:43200 hours and 600 seconds。知识点:运算符优先级。和 % 的优先级相同,从左向右结合。
2024-08-09 08:50:36
176
原创 golang面试-day85
参考答案及解析:输出空字符。这是一个大多数人遇到的坑,TrimRight() 会将第二个参数字符串里面所有的字符拿出来处理,只要与其中任何一个字符相等,便会将其删除。想正确地截取字符串,可以参考 TrimSuffix() 函数。参考答案及解析:输出 []。copy(dst, src) 函数返回 len(dst)、len(src) 之间的最小值。如果想要将 src 完全拷贝至 dst,必须给 dst 分配足够的内存空间。或者直接使用 append()
2024-08-08 20:48:59
167
原创 golang面试-day84
参考答案及解析:B。由 panic 引发异常以后,程序停止执行,然后调用延迟函数(defer),就像程序正常退出一样。
2024-08-08 20:48:20
149
原创 golang面试-day83
参考答案及解析:A。一个文件夹下只能有一个包,可以多个.go文件,但这些文件必须属于同一个包。结构体类型 data 没有实现接口 printer。参考答案及解析:编译报错。
2024-08-08 20:47:02
163
原创 golang面试-day82
参考答案及解析:0 1 1 2。知识点:iota 的使用。这道题易错点在 bzero、bone 的值,在一个常量声明代码块中,如果 iota 没出现在第一行,则常量的初始值就是非 0 值。参考答案及解析:4。当 i 的值为 0、128 是会发生相等情况,注意 byte 是 uint8 的别名。
2024-08-08 20:46:28
377
原创 golang面试-day81
参考答案及解析:A。Go语言的内存回收机制规定,只要有一个指针指向引用一个变量,那么这个变量就不会被释放(内存逃逸),因此在 Go 语言中返回函数参数或临时变量是安全的。参考答案即解析:运行时错误。
2024-08-08 20:45:50
312
原创 golang面试-day80
参考答案及解析:AD。全局变量要定义在函数之外,而在函数之外定义的变量只能用 var 定义。短变量声明 := 只能用于函数之内。
2024-08-08 20:45:09
180
原创 实现的基于fabric 2.X 的中药饮片代煎配送联盟链项目的业务系统-中药煎配智能管理系统的核心代码讲解
这段代码是中药煎配智能管理系统的API路由配置部分,它定义了与用户交互的HTTP接口。该系统利用计算机控制、物联网及互联网技术,对煎药工艺流程、客户服务、设备和人员管理以及煎药工艺质量控制等环节进行全过程控制与管理。
2024-08-08 12:03:55
664
原创 基于联盟链Fabric 2.X的中药饮片代煎配送服务与监管平台07智能合约设计-智能合约如何测试
代码是基于Hyperledger Fabric 2.X平台,利用Go语言在Goland IDE中编写的智能合约(Chaincode)的Mock测试方法。Mock测试是一种软件测试技术,它允许开发者在不运行完整代码或依赖外部系统(如数据库、网络服务等)的情况下,对代码进行测试。在这个例子中,Mock测试用于测试智能合约的各种功能,包括处方上传、查询、煎药记录上传、物流信息上传以及处方历史变更查询等。
2024-08-08 11:40:29
152
原创 基于联盟链Fabric 2.X的中药饮片代煎配送服务与监管平台-07智能合约设计
智能合约代码是基于Hyperledger Fabric 2.X平台设计的,旨在为中药饮片代煎配送联盟链提供核心的业务逻辑处理。
2024-08-08 11:31:04
88
原创 基于联盟链Fabric 2.X的中药饮片代煎配送服务与监管平台-06数据库设计
这个数据库设计是为了支持中药饮片代煎配送服务而设计的,涵盖了从药品管理、处方管理、煎药过程、配送到用户反馈等多个环节。
2024-08-08 11:24:44
86
原创 golang面试-day76
知识点:类型断言,结构体嵌套。结构体 S2 嵌套了结构体 S1,S2 自己没有实现 g() ,调用的是 S1 的 g()。参考答案及解析:协程里面,使用 wg.Add(1) 但是没有 wg.Done(),导致 panic()。
2024-08-08 07:47:37
229
原创 golang 面试-day75
参考答案及解析:recover:1。知识点:panic、recover()。当程序 panic 时就不会往下执行,可以使用 recover() 捕获 panic 的内容。参考答案及解析:defer 语句应该放在 if() 语句后面,先判断 err,再 defer 关闭文件句柄。
2024-08-08 07:46:48
133
原创 golang 面试-day74
参考答案及解析:2、3正确。知识点:简短变量声明。参考答案及解析:for {} 独占 CPU 资源导致其他 Goroutine 饿死。引自《Go语言高级编程》
2024-08-08 07:46:02
133
原创 golang 面试-day73
参考答案及解析:{5}。这道题容易忽视的点是,String() 是指针方法,而不是值方法,所以使用 Println() 输出时不会调用到 String() 方法。参考答案及解析:312。对比昨天的第二题,本题的 s.Add(1).Add(2) 作为一个整体包在一个匿名函数中,会延迟执行。
2024-08-07 20:16:19
151
原创 golang面试-day72
所以可以循环调用方法 Add();2.defer 函数的参数(包括接收者)是在 defer 语句出现的位置做计算的,而不是在函数执行的时候计算的,所以 s.Add(1) 会先于 s.Add(3) 执行。,对于有符号的整数来说,是按照补码进行取反操作的(快速计算方法:对数 a 取反,结果为 -(a+1) ),对于无符号整数来说就是按位取反。参考答案及解析:132。这一题有两点需要注意:1.Add() 方法的返回值依然是指针类型。,它返回一个每个 bit 位都取反的数。从参考答案及解析:错。
2024-08-07 20:15:36
136
原创 golang面试-day70
参考答案及解析:BD。知识点:单引号、双引号和字符串连接。在 Go 语言中,双引号用来表示字符串 string,其实质是一个 byte 类型的数组,单引号表示 rune 类型。参考答案及解析:43。
2024-08-07 20:15:00
433
原创 golang面试-day68
参考答案及解析:22222。知识点:defer()、for-range。for-range 虽然使用的是 :=,但是 v 不会重新声明,可以打印 v 的地址验证下。参考答案及解析:goto 不能跳转到其他函数或者内层代码。
2024-08-07 20:13:36
121
原创 golang面试-day67
参考答案及解析:9 [{0} {9}]。知识点:for-range 切片。for-range 切片时使用的是切片的副本,但不会复制底层数组,换句话说,此副本切片与原数组共享底层数组。参考答案及解析:9 [{3} {9}]。知识点:for-range 切片。参考前几道题的解析,这道题的答案应该很明显。
2024-08-07 20:12:56
187
原创 golang 面试-day66
参考答案及解析:9 [{0} {9}]。知识点:for-range 数组指针。for-range 循环中的循环变量 t 是原数组元素的副本。如果数组元素是结构体值,则副本的字段和原数组字段是两个不同的值。参考答案及解析:0 [{0} {9}]。知识点:for-range 循环数组。此时使用的是数组 ts 的副本,所以 t.n = 3 的赋值操作不会影响原数组。
2024-08-07 14:02:14
171
原创 golang面试-day64
参考答案及解析:21。recover() 必须在 defer() 函数中调用才有效,所以第 9 行代码捕获是无效的。在调用 defer() 时,便会计算函数的参数并压入栈中,所以执行第 6 行代码时,此时便会捕获 panic(2);此后的 panic(1),会被上一层的 recover() 捕获。
2024-08-07 14:00:58
200
原创 golang 面试-day63
参考答案及解析:768。知识点:匿名函数、defer()。defer() 后面的函数如果带参数,会优先计算参数,并将结果存储在栈中,到真正执行 defer() 的时候取出。参考答案及解析:AD。
2024-08-07 14:00:17
222
原创 golang 面试-day62
参考答案及解析:第 4 行,当前作用域中,预定义的 nil 被覆盖,此时 nil 是 int 类型值,不能赋值给 map 类型。参考答案及解析:-128。
2024-08-07 13:59:46
107
原创 大数据Hadoop介绍
Hadoop是一个开源的分布式计算框架,它允许用户在不了解分布式底层细节的情况下,开发分布式程序,充分利用集群的威力进行高速运算和存储。起源:Hadoop起源于Apache Nutch项目,该项目旨在构建一个开源的网络搜索引擎。随着项目的发展,Nutch中的分布式文件系统和MapReduce计算框架被分离出来,形成了独立的Hadoop项目。核心组件。
2024-08-07 08:49:02
876
原创 golang面试-day61
所以本例,会先计算 s[k],等号右边是两个表达式是常量,所以赋值运算等同于 k, s[1] = 0, 3。计算等号左边的索引表达式和取址表达式,接着计算等号右边的表达式;参考答案及解析:4。参考答案及解析:932。
2024-08-07 08:37:03
131
原创 golang面试-day60
参考答案及解析:锁失效。将 Mutex 作为匿名字段时,相关的方法必须使用指针接收者,否则会导致锁机制失效。参考答案及解析:第 19 行,因为 s.bar 将被展开为。,而 s.T 是个空指针,解引用会 panic。引自:《Go 语言学习笔记》· 同步。来避免复制的问题,但需要初始化。引自:《Go语言101》
2024-08-07 08:36:03
132
原创 golang面试完-day57
参考答案及解析:321。第一次循环,写操作已经准备好,执行 o(3),输出 3;第二次,读操作准备好,执行 o(2),输出 2 并将 c 赋值为 nil;第三次,由于 c 为 nil,走的是 default 分支,输出 1。参考答案及解析:第 8 行。因为两个比较值的动态类型为同一个不可比较类型。
2024-08-06 20:30:00
145
原创 golang面试-day58
参考答案及解析:10。知识点:运算符优先级。如下规则:递增运算符 ++ 和递减运算符 -- 的优先级低于解引用运算符 * 和取址运算符 &,解引用运算符和取址运算符的优先级低于选择器 . 中的属性选择操作符。参考答案:第 6 行,截取符号 [i:j],如果 j 省略,默认是原切片或者数组的长度,x 的长度是 2,小于起始下标 6 ,所以 panic。
2024-08-06 20:15:00
166
原创 golang 面试-day56
参考答案及解析:代码没问题,输出 3 4。从一个基础切片派生出的子切片的长度可能大于基础切片的长度。假设基础切片是 baseSlice,使用操作符 [low,high],有如下规则:0 <= low <= high <= cap(baseSlice),只要上述满足这个关系,下标 low 和 high 都可以大于 len(baseSlice)。当指针值赋值给变量或者作为函数参数传递时,会立即计算并复制该方法执行所需的接收者对象,与其绑定,以便在稍后执行时,能隐式第传入接收者参数。引自:《Go语言101》
2024-08-06 19:45:00
290
原创 mysql 如何实现多表复杂查询
MySQL 中实现多表复杂查询主要依赖于 SQL 的 JOIN 语句,以及可能用到的子查询(Subquery)、UNION、临时表(Temporary Tables)、视图(Views)等技术。这些技术可以根据你的具体需求和数据模型来选择使用。
2024-08-06 18:33:51
565
原创 golang面试-day55
C. 不能在单向通道上做逆向操作(例如:只发送通道用于接收);直接返回的 T{} 无法寻址,不可直接赋值。A. close() 可以用于只接收通道;B. 单向通道可以转换为双向通道;参考答案及解析:C。
2024-08-06 15:24:00
316
原创 golang 面试-day54
参考答案及解析:10 11 12。知识点:方法表达式。通过类型引用的方法表达式会被还原成普通函数样式,接收者是第一个参数,调用时显示传参。,只要目标方法存在于该类型的方法集中就可以。不能使用多级指针调用方法。
2024-08-06 15:23:16
206
原创 golang面试-day53
B. 从已关闭的缓冲通道接收数据,返回已缓冲数据或者零值;2.不可寻址的结构体不能调用带结构体指针接收者的方法;A. 向已关闭的通道发送数据会引发 panic;C. 无论接收还是接收,nil 通道都会阻塞;1.直接返回的 T{} 不可寻址;参考答案及解析:ABC。
2024-08-06 15:22:15
232
酒店管理系统(extjs+sqlserver2005)
2013-02-21
流风通用管理框架源码
2013-02-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅