最近写代码意识到用append来动态增减数组大小有点过于繁琐,之前用java,c#或js都不会有这种心累的感觉,所以研究了一下如何来简化这种本不该如此复杂的常用工具。
为了研究出这个方法我也特地把原本的1.17版本升级到1.18版希望泛型能有所帮助,但是花1小时发现这些新特性在这个场景并没有什么作用,最后不得不还是需要用到接口和多态来实现。
首先我们先定义下测试需要用到的接口和结构体,这里分别有TestObject,TestPerson,TestStudent这三种对象,Student继承Person,ITestObject做为传递用的基本类型。
下面定义用于简化切片的方法,基本上这三个就是最常用的,足够满足日常绝大多数需求。
进行添加测试
输出结果
进行插入测试,这是插入到B所在位置
输出结果
进行删除测试
输出结果
我们再用派生出来的student结构体做下测试
所以go虽然简单,但如果想把复杂的事情变简单给自己节省开发时间还是离不开oop思想。
如果想看到更多有价值的开发经验,记得关注哦!
,