java中list的用法 java编辑器手机版
大家好,今天小编来为大家解答以下的问题,关于java中list的用法,java编辑器手机版这个很多人还不知道,现在让我们一起来看看吧!
java中List的用法尽量详细解释,包括例子。
List集合中的对象按照一定的顺序排放,里面的内容可以重复。
List接口实现的类:ArrayList(实现动态数组), Vector(实现动态数组),LinkedList(实现链表), Stack(实现堆栈)
一 list接口
1.java.util.ArrayList类实现一个可增长的动态数组,平时用的比较多的就是add()方法,其它方法
请参考API帮助文档。使用该方法向集合内添加对象,并且这些对象是按照一定的顺序排列
的,它内部原理是数组实现的,因此处理数据量较大时,不建议使用。
public class TestArrayList{
public static void main(String[] args){
//声明List并实例化为ArrayList
List al= new ArrayList();
//使用add()方法添加元素
al.add("a");
al.add("b");
al.add("c");
al.add("d");
//使用Iterator迭代器遍历出集合的元素并打印
for(Iterator i= al.iterator();i.hasNext();){
String str=(String) i.next();
System.out.println(str);
}
}
}
3.java.util.Vector(向量)类与ArrayList类似的也是实现一个动态的数组,该向量可以随意的增长以存放更多的对象
public class TestArrayList{
public static void main(String[] args){
//声明List并实例化为Vector
List al= new Vector();
//使用add()方法添加对象
al.add("a");
al.add("b");
al.add("c");
al.add("d");
//使用Iterator迭代器遍历出集合的对象并打印
for(Iterator i= al.iterator();i.hasNext();){
String str=(String) i.next();
System.out.println(str);
}
}
}
3.java.util.LinkedList类实现了链表,可初始化化为空或者已存在的集合,通常使用以下方法
add();向链表末尾添加对象。
addFirst()在链表开头添加对象。
addLast()在链表末尾添加对象。
getFirst()得到链表开头的对象。
getLast()得到链表末尾的对象。
注意该类提供了随机访问列表中的元素的方法,但是底层依然必须遍历去查找随机访问的对象,因此性能依然有限.
public static void main(String[] args){
//声明LinkedList并实例化
LinkedList al= new LinkedList();
//使用add()方法添加元素
al.add("a");
al.add("b");
al.add("c");
al.add("d");
//使用Iterator迭代器遍历出集合的元素并打印
for(Iterator i= al.iterator();i.hasNext();){
String str=(String) i.next();
System.out.println(str);
}
System.out.println("_____");
//向链表头和尾分别添加x和z
al.addFirst("z");
al.addLast("x");
//遍历查看添加后的结果
for(Iterator i= al.iterator();i.hasNext();){
String str=(String) i.next();
System.out.println(str);
}
}
4.java.util.Stack类实现了堆栈数据结构,即按照先进后出的原则存放数据。创建时只能为空。
使用push()方法进行添加对象
public static void main(String[] args){
//声明Stack并实例化
Stack al= new Stack();
//使用push()方法添加元素
al.push("a");
al.push("b");
al.push("c");
al.push("d");
al.push("f");
//使用Iterator迭代器遍历出集合的元素并打印
for(Iterator i= al.iterator();i.hasNext();){
String str=(String) i.next();
System.out.println(str);
}
}
java中list的使用方法
LIST是个容器接口,可以理解为动态数组,传统数组必须定义好数组的个数才可以使用,而容器对象无须定义好数组下标总数,用add()方法即可添加新的成员对象,他可以添加的仅仅只能为对象,不能添加基本数据类型,容器还对应get(),remove()方法来获取和删除数据成员
java如何从List中取值
要从一个List中取值,可以使用get()方法来获取指定索引位置的元素。在你提供的代码中,generatePonits()方法返回的是一个String类型的List,包含多个由随机生成的坐标组成的字符串。
如果你想要在另一个方法中分别提取出两个随机数,可以先通过get()方法获取对应索引位置的坐标字符串,然后再将其解析为数字。具体步骤如下:
```java
//获取generatePonits()方法随机生成的第一个坐标字符串,并将其解析为数字
String point1Str= generatePonits().get(0);
int x1= Integer.parseInt(point1Str.substring(1, point1Str.indexOf(",")));
int y1= Integer.parseInt(point1Str.substring(point1Str.indexOf(",")+ 1, point1Str.length()- 1));
//获取generatePonits()方法随机生成的第二个坐标字符串,并将其解析为数字
String point2Str= generatePonits().get(1);
int x2= Integer.parseInt(point2Str.substring(1, point2Str.indexOf(",")));
int y2= Integer.parseInt(point2Str.substring(point2Str.indexOf(",")+ 1, point2Str.length()- 1));
```
以上代码假设你想要获取generatePonits()方法随机生成的第一个和第二个坐标,并将它们包含的x和y坐标分别解析为整数。这里使用了String类的substring()方法来截取坐标字符串中的x和y坐标部分,并用Integer类的parseInt()方法将它们解析为整数。需要注意的是,由于坐标字符串的格式是"(x,y)",因此在使用substring()方法时需要去掉开头的"("和结尾的")"。
当然,如果你仅仅只是想在generatePonits()方法和另一个方法之间传递生成的随机数,也可以考虑将它们定义为类成员变量,而不是在generatePonits()方法内部声明。这样就可以在不同的方法之间共享这些随机数了。
好了,本文到此结束,如果可以帮助到大家,还望关注本站哦!