java ArrayList的用法
答案:5 悬赏:0
解决时间 2021-01-26 09:58
- 提问者网友:浮克旳回音
- 2021-01-26 05:32
java ArrayList的用法
最佳答案
- 二级知识专家网友:一秋
- 2021-01-26 06:04
-----------构造方法摘要
ArrayList()
构造一个初始容量为 10 的空列表。
ArrayList(Collection extends E> c)
构造一个包含指定 collection 的元素的列表,这些元素是按照该 collection 的迭代器返回它们的顺序排列的。
ArrayList(int initialCapacity)
构造一个具有指定初始容量的空列表。
-----------set()不是构造方法
set(int index, E element)
用指定的元素替代此列表中指定位置上的元素。
--顺便问下如果第二个删了,第三个会不会代替第二个的位置,arraylist的长度会不会减少?
-----------会的
removeRange(int fromIndex, int toIndex)
移除列表中索引在 fromIndex(包括)和 toIndex(不包括)之间的所有元素。
示例代码如下:
import java.util.ArrayList;
public class Temp {
public static void main(String[] args){
ArrayList al = new ArrayList(11);
for(int i=0;i<10;i++){
al.add("string"+(i+1));
}
printList(al);
System.out.println("//insert one element");
//1为你指定的位置
al.add(1,"stringinsert");
printList(al);
System.out.println("//remove one element");
al.remove(1);
printList(al);
}
public static void printList(ArrayList al){//输出ArrayList的方法
System.out.print("current list:|");
for(int i=0;i System.out.print(al.get(i)+" ");
}
System.out.println("|");
}
}
ArrayList()
构造一个初始容量为 10 的空列表。
ArrayList(Collection extends E> c)
构造一个包含指定 collection 的元素的列表,这些元素是按照该 collection 的迭代器返回它们的顺序排列的。
ArrayList(int initialCapacity)
构造一个具有指定初始容量的空列表。
-----------set()不是构造方法
set(int index, E element)
用指定的元素替代此列表中指定位置上的元素。
--顺便问下如果第二个删了,第三个会不会代替第二个的位置,arraylist的长度会不会减少?
-----------会的
removeRange(int fromIndex, int toIndex)
移除列表中索引在 fromIndex(包括)和 toIndex(不包括)之间的所有元素。
示例代码如下:
import java.util.ArrayList;
public class Temp {
public static void main(String[] args){
ArrayList al = new ArrayList(11);
for(int i=0;i<10;i++){
al.add("string"+(i+1));
}
printList(al);
System.out.println("//insert one element");
//1为你指定的位置
al.add(1,"stringinsert");
printList(al);
System.out.println("//remove one element");
al.remove(1);
printList(al);
}
public static void printList(ArrayList al){//输出ArrayList的方法
System.out.print("current list:|");
for(int i=0;i System.out.print(al.get(i)+" ");
}
System.out.println("|");
}
}
全部回答
- 1楼网友:行路难
- 2021-01-26 10:35
自己去看api就什么都知道了,api什么都有了。
- 2楼网友:醉吻情书
- 2021-01-26 08:57
1.添加元素 add(E e) 将指定的元素添加到此列表的尾部
2.遍历这个ArrayList 两种方法:
1. ArrayList arrayList=new ArrayList();
Iterator it=arrayList.iterator();
while(it.hasNext()){
it.next();
// .........
}
2. for(int i=0;i arrayList.get(i);
// .........
}
3.移除元素 remove(int index)移除此列表中指定位置上的元素。
4.Hashmap是一个Map接口的具体实现,可以支持键值的映射
ArrayList是一个List接口的具体实现,只是一个链表
2.遍历这个ArrayList 两种方法:
1. ArrayList arrayList=new ArrayList();
Iterator it=arrayList.iterator();
while(it.hasNext()){
it.next();
// .........
}
2. for(int i=0;i arrayList.get(i);
// .........
}
3.移除元素 remove(int index)移除此列表中指定位置上的元素。
4.Hashmap是一个Map接口的具体实现,可以支持键值的映射
ArrayList是一个List接口的具体实现,只是一个链表
- 3楼网友:duile
- 2021-01-26 07:38
针对你的4个问题进行回答(我也是初学,仅供参考)
1.ArrayList 继承于 List //主要作用于添加,删除,修改(个人理解),所以第一个,肯定OK。。
2.List中还有一个叫LinkedList的,如果我们要访问的话,就用ArrayList,因为数据大的话,用ArrayList访问起来,速度较快。
3.正如我前面所说List中还有一个叫LinkedList,它就是用来移除或增加元素的,很明显,它增删速度要快些,
4.HaspMap继承与Map ...
我的总结是:ArrayList 读快改慢, LinkedList 读慢改快
HashMap,呵呵,自己看看吧。
1.ArrayList 继承于 List //主要作用于添加,删除,修改(个人理解),所以第一个,肯定OK。。
2.List中还有一个叫LinkedList的,如果我们要访问的话,就用ArrayList,因为数据大的话,用ArrayList访问起来,速度较快。
3.正如我前面所说List中还有一个叫LinkedList,它就是用来移除或增加元素的,很明显,它增删速度要快些,
4.HaspMap继承与Map ...
我的总结是:ArrayList 读快改慢, LinkedList 读慢改快
HashMap,呵呵,自己看看吧。
- 4楼网友:摆渡翁
- 2021-01-26 07:28
import java.util.ArrayList;
import java.util.Iterator;
public class Demo {
public static void main(String[] args){
ArrayList list = new ArrayList();
list.add("a");
list.add("b");
list.add("c");
System.out.println("list中添加了a,b,c三个元素");
Iterator it = list.iterator();
System.out.print("遍历list得到的结果:");
while(it.hasNext()){
System.out.print(it.next() + ",");
}
System.out.println();
list.clear();
System.out.println("已经移除了list中的所有元素");
}
}
ArrayList类:
ArrayList实现了可变大小的数组。它允许所有元素,包括null。ArrayList没有同步。
size,isEmpty,get,set方法运行时间为常数。但是add方法开销为分摊的常数,添加n个元素需要O(n)的时间。其他的方法运行时间为线性。
每个ArrayList实例都有一个容量(Capacity),即用于存储元素的数组的大小。这个容量可随着不断添加新元素而自动增加,但是增长算法并没有定义。当需要插入大量元素时,在插入前可以调用ensureCapacity方法来增加ArrayList的容量以提高插入效率。
Map接口:
请注意,Map没有继承Collection接口,Map提供key到value的映射。一个Map中不能包含相同的key,每个key只能映射一个value。Map接口提供3种集合的视图,Map的内容可以被当作一组key集合,一组value集合,或者一组key-value映射。
import java.util.Iterator;
public class Demo {
public static void main(String[] args){
ArrayList list = new ArrayList();
list.add("a");
list.add("b");
list.add("c");
System.out.println("list中添加了a,b,c三个元素");
Iterator it = list.iterator();
System.out.print("遍历list得到的结果:");
while(it.hasNext()){
System.out.print(it.next() + ",");
}
System.out.println();
list.clear();
System.out.println("已经移除了list中的所有元素");
}
}
ArrayList类:
ArrayList实现了可变大小的数组。它允许所有元素,包括null。ArrayList没有同步。
size,isEmpty,get,set方法运行时间为常数。但是add方法开销为分摊的常数,添加n个元素需要O(n)的时间。其他的方法运行时间为线性。
每个ArrayList实例都有一个容量(Capacity),即用于存储元素的数组的大小。这个容量可随着不断添加新元素而自动增加,但是增长算法并没有定义。当需要插入大量元素时,在插入前可以调用ensureCapacity方法来增加ArrayList的容量以提高插入效率。
Map接口:
请注意,Map没有继承Collection接口,Map提供key到value的映射。一个Map中不能包含相同的key,每个key只能映射一个value。Map接口提供3种集合的视图,Map的内容可以被当作一组key集合,一组value集合,或者一组key-value映射。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯