js实现ArrayList功能附实例代码


Posted in Javascript onOctober 29, 2014

1.ArrayList方法摘要

构造方法摘要

ArrayList()
构造一个初始容量为 10 的空列表。
ArrayList(Collection<? extends E> c)
构造一个包含指定 collection 的元素的列表,这些元素是按照该 collection 的迭代器返回它们的顺序排列的。
ArrayList(int initialCapacity)
构造一个具有指定初始容量的空列表。
方法摘要
boolean add(E e)
将指定的元素添加到此列表的尾部。
void add(int index, E element)
将指定的元素插入此列表中的指定位置。
boolean addAll(Collection<? extends E> c)
按照指定 collection 的迭代器所返回的元素顺序,将该 collection 中的所有元素添加到此列表的尾部。
boolean addAll(int index, Collection<? extends E> c)
从指定的位置开始,将指定 collection 中的所有元素插入到此列表中。
void clear()
移除此列表中的所有元素。
Object clone()
返回此 ArrayList 实例的浅表副本。
boolean contains(Object o)
如果此列表中包含指定的元素,则返回 true。
void ensureCapacity(int minCapacity)
如有必要,增加此 ArrayList 实例的容量,以确保它至少能够容纳最小容量参数所指定的元素数。
E get(int index)
返回此列表中指定位置上的元素。
int indexOf(Object o)
返回此列表中首次出现的指定元素的索引,或如果此列表不包含元素,则返回 -1。
boolean isEmpty()
如果此列表中没有元素,则返回 true
int lastIndexOf(Object o)
返回此列表中最后一次出现的指定元素的索引,或如果此列表不包含索引,则返回 -1。
E remove(int index)
移除此列表中指定位置上的元素。
boolean remove(Object o)
移除此列表中首次出现的指定元素(如果存在)。
protected void removeRange(int fromIndex, int toIndex)
移除列表中索引在 fromIndex(包括)和 toIndex(不包括)之间的所有元素。
E set(int index, E element)
用指定的元素替代此列表中指定位置上的元素。
int size()
返回此列表中的元素数。
Object[] toArray()
按适当顺序(从第一个到最后一个元素)返回包含此列表中所有元素的数组。
<T> T[] toArray(T[] a)
按适当顺序(从第一个到最后一个元素)返回包含此列表中所有元素的数组;返回数组的运行时类型是指定数组的运行时类型。
void trimToSize()
将此 ArrayList 实例的容量调整为列表的当前大小。

2.js实现部分功能

<html> 

<script type="text/javascript" src="json.js"></script> 

<head> 

<script type="text/javascript"> 

function ArrayList(){ 

this.arr=[], 

this.size=function(){ 

return this.arr.length; 

}, 

this.add=function(){ 

if(arguments.length==1){ 

this.arr.push(arguments[0]); 

}else if(arguments.length>=2){ 

var deleteItem=this.arr[arguments[0]]; 

this.arr.splice(arguments[0],1,arguments[1],deleteItem) 

} 

return this; 

}, 

this.get=function(index){ 

return this.arr[index]; 

}, 

this.removeIndex=function(index){ 

this.arr.splice(index,1); 

}, 

this.removeObj=function(obj){ 

this.removeIndex(this.indexOf(obj)); 

}, 

this.indexOf=function(obj){ 

for(var i=0;i<this.arr.length;i++){ 

if (this.arr[i]===obj) { 

return i; 

}; 

} 

return -1; 

}, 

this.isEmpty=function(){ 

return this.arr.length==0; 

}, 

this.clear=function(){ 

this.arr=[]; 

}, 

this.contains=function(obj){ 

return this.indexOf(obj)!=-1; 

} 
}; 

//新建一个List 

var list=new ArrayList(); 

//增加一个元素 

list.add("0").add("1").add("2").add("3"); 

//增加指定位置 

list.add(2,"22222222222"); 

//删除指定元素 

list.removeObj("3"); 

//删除指定位置元素 

list.removeIndex(0); 

for(var i=0;i<list.size();i++){ 

document.writeln(list.get(i)); 

} 

document.writeln(list.contains("2")) 

</script> 

</head> 

<body> 

</body> 

</html>
Javascript 相关文章推荐
js 利用className得到对象的实现代码
Nov 15 Javascript
js比较日期大小的方法
May 12 Javascript
js实现简洁大方的二级下拉菜单效果代码
Sep 01 Javascript
js简单网速测试方法完整实例
Dec 15 Javascript
详解js中class的多种函数封装方法
Jan 03 Javascript
JavaScript获取服务器端时间的方法
Nov 29 Javascript
js实现网页定位导航功能
Mar 07 Javascript
使用angular帮你实现拖拽的示例
Jul 05 Javascript
Cordova(ionic)项目实现双击返回键退出应用
Sep 17 Javascript
微信小程序实现时间戳格式转换
Jul 20 Javascript
解决vue使用vant下拉框van-dropdown-item 绑定title值不变问题
Aug 05 Javascript
详解vue中v-model和v-bind绑定数据的异同
Aug 10 Javascript
JQuery 实现在同一页面锚点链接之间的平滑滚动
Oct 29 #Javascript
js中的json对象详细介绍
Oct 29 #Javascript
鼠标悬浮显示二级菜单效果的jquery实现
Oct 29 #Javascript
BAT及各大互联网公司2014前端笔试面试题--JavaScript篇
Oct 29 #Javascript
JavaScript中的迭代器和生成器详解
Oct 29 #Javascript
JS实现倒计时和文字滚动的效果实例
Oct 29 #Javascript
javascript设置连续两次点击按钮时间间隔的方法
Oct 28 #Javascript
You might like
多人战的战术与战略
2020/03/04 星际争霸
一个图形显示IP的PHP程序代码
2007/10/19 PHP
单台服务器的PHP进程之间实现共享内存的方法
2014/06/13 PHP
php实现网站文件批量压缩下载功能
2015/10/28 PHP
yii权限控制的方法(三种方法)
2015/12/28 PHP
PHP中如何使用Redis接管文件存储Session详解
2018/11/28 PHP
IE、FF、Chrome浏览器中的JS差异介绍
2013/08/13 Javascript
js替换字符串中所有指定的字符(实现代码)
2016/08/17 Javascript
Javascript6中字符串的四个新用法分享
2016/09/11 Javascript
jquery表单验证插件validation使用方法详解
2017/01/20 Javascript
详解Weex基于Vue2.0开发模板搭建
2017/03/20 Javascript
jQuery插件FusionCharts实现的3D帕累托图效果示例【附demo源码】
2017/03/25 jQuery
jQuery实现QQ空间汉字转拼音功能示例
2017/07/10 jQuery
Angular模板表单校验方法详解
2017/08/11 Javascript
js编写简单的聊天室功能
2017/08/17 Javascript
React Native中的RefreshContorl下拉刷新使用
2017/10/09 Javascript
微信小程序picker组件简单用法示例【附demo源码下载】
2017/12/05 Javascript
微信小程序实现搜索功能并跳转搜索结果页面
2019/05/18 Javascript
vue移动端模态框(可传参)的实现
2019/11/20 Javascript
python自动翻译实现方法
2016/05/28 Python
Python编程求质数实例代码
2018/01/31 Python
Selenium鼠标与键盘事件常用操作方法示例
2018/08/13 Python
Python绘制二维曲线的日常应用详解
2019/12/04 Python
Python+OpenCV实现旋转文本校正方式
2020/01/09 Python
Python通过文本和图片生成词云图
2020/05/21 Python
使用Python-OpenCV消除图像中孤立的小区域操作
2020/07/05 Python
关于HTML5语义标签的实践(blog页面)
2016/07/12 HTML / CSS
怎么写有吸引力的自荐信
2013/11/17 职场文书
总裁秘书岗位职责
2013/12/04 职场文书
国际贸易毕业生求职信
2014/07/20 职场文书
68句权威创业名言
2019/08/26 职场文书
导游词之湖州-太湖
2019/10/11 职场文书
python实现简单反弹球游戏
2021/04/12 Python
海弦WR-800F
2022/04/05 无线电
5个pandas调用函数的方法让数据处理更加灵活自如
2022/04/24 Python
利用Python实现模拟登录知乎
2022/05/25 Python