码农翻身代码题--SimpleList类,模仿Java的ArrayList ,实现已经定义好的接口

这个问题看似简单,其实并不容易。作者这样说:

这道题目不要求实现复杂的算法,不需要进行面向对象的设计,也不需要考虑多线程下的线程安全(modCount的作用)
况且已经给出了提示:用一个Object 数组来实现。
如果说有一点语法层面的难度,那就是使用了一点泛型。
其实,如果我把泛型去掉,估计他们还是实现不了,因为这个类的核心逻辑不是泛型。
这个SimpleList类要求的是能对一个数组进行操作,核心逻辑就两点:
1. 能往数组里添加数据,记录size 。如果数组空间不够了,则需要增大空间。
2. 能删除数组指定位置的数据,并且把之后的数据往前挪动。
这里面有很多细节需要处理,一不留神就会出错一一计算机编程就是这样的
养成计算机的思维方式,流畅地把人类语言的需求转换成计算机语言,这是程序员的基本功

这个基本功的训练就是数据结构和算法,经验就是多做习题,让这种思维在脑子里固化,以后的编程就可以信手拈来了。

具体实现参考:https://gitee.com/constfafa/spring-data-jpa-demo.git下的spring-data-jpa-demo/ src / main / java / com / hfi / manongfanshen

单元测试代码:spring-data-jpa-demo/ src / test / java / com / hfi / manongfanshen

发布了442 篇原创文章 · 获赞 222 · 访问量 115万+

猜你喜欢

转载自blog.csdn.net/u013905744/article/details/103393497