java的list类
① java中的List的使用
List<E>([]内的内容可省略),与数组类似:
实例化:List[<数据类型>] list = new ArrayList[<数据类型>]();
获得集合内元素个数:list.size();
添加元素:
默认添加:list.add(e);
指定下标添加(添加后下标后的元素向后挪一位):list.add(index,e);
删除元素:
返回是否删除:list.remove(e);
直接删除指定下标的元素(只删除找到的第一个相符合的元素):list.remove(index);
替换元素(替换掉指定下标的元素):list.set(index,e);
取出元素:list.get(index);
清空集合:list.clear();
判断集合中是否存在某个元素(存在返回true,不存在返回false):list.contains(e);
对比两个集合中的所有元素:
两个对象一定相等:list.equals(list2);
两个对象不一定相等:list.hashCode() == list2.hashCode();
(两个相等对象的equals方法一定为true, 但两个hashcode相等的对象不一定是相等的对象。)
获得元素下标:
元素存在则返回找到的第一个元素的下标,不存在则返回-1:list.indexOf(e);
元素存在则返回找到的最后一个元素的下标,不存在则返回-1:list.lastIndexOf(e);
判断集合是否为空(空则返回true,非空则返回false):list.isEmpty();
返回Iterator集合对象:list.iterator();
将集合转换为字符串:list.toString();
截取集合(从fromIndex开始在toIndex前结束,[fromIndex,toIndex)):list.subList(fromIndex,toIndex);
将集合转换为数组:
默认类型:list.toArray();
指定类型(objects为指定类型的数组对象,并将转换好的数组赋值给objects数组):list.toArray(objects);
以上为List常用的方法。
② 谁能说明一下java里list这个类怎么用,要详细
List是一个接口,要使用这个类要用这个类的子类或者这个类的实现类去实例化它,比如
List list = new ArrayList;
List<T> T表示某种类型,可以是Object类,也可以是Object类的子类
list常用的方法
list.add(obj) 在list的结尾添加元素
list.add(i,obj) 在list指定的位置添加元素
list.addAll() 将另一个list添加到list中
list.remove(i) 删除指定位置的元素
③ java编写一个类,名字为List,在main方法中做以下工作:
代码如下:
publicclassList{
publicstaticvoidmain(String[]args){
//创建集合list2
ArrayList<String>list2=newArrayList<String>();
//向集合中添加元素
list2.add("abc");
list2.add("xyz");
//遍历集合
for(inti=0;i<list2.size();i++){
//将遍历出来的元素打印在控制台
System.out.println("第"+(i+1)+"个元素是:"+list2.get(i));
}
}
}
测试效果:
④ java中List是接口还是抽象类
List是接口因为继承了 Collection 接口以定义一个允许重复项的有序集合。
接口(interface)可以说成是抽象类的一种特例,接口中的所有方法都必须是抽象的。接口中的方法定义默认为public abstract类型,接口中的成员变量类型默认为public static final (这里需要说一点,既然一个变量被final修饰了,那么这个变量就是一个常量!!!!!变量必须初始化成常量!!!!!)
下面比较一下两者的语法区别:
1.抽象类可以有构造方法,接口中不能有构造方法。
2.抽象类中可以有普通成员变量,接口中没有普通成员变量!!!!!!!(注意重点在 普通 即 非静态 和 变量!!!!)
3.抽象类中可以包含非抽象的普通方法,接口中的所有方法必须都是抽象的,不能有非抽象的普通方法。
4. 抽象类中的抽象方法的访问类型可以是public,protected和(默认类型,虽然eclipse下不报错,但应该也不行),但接口中的抽象方法只能是public类型的,并且默认即为public abstract类型。
附录一个开发中接口的代码
5.抽象类中可以包含静态方法(static),接口中不能包含静态方法.
6.抽象类和接口中都可以包含静态成员变量(static),抽象类中的静态成员变量的访问类型可以任意,但接口中定义的变量只能是public static final类型,并且默认即为public static final类型。
7. 一个类可以实现多个接口,但只能继承一个抽象类。
⑤ java的List
有的
list你可以用父类List的方法,但是用ArrayList独有的方法需要强转,而且你还可以用List接口下的其他实现类的方法。
array你就只能用List和ArrayList里的方法了
⑥ java的list类实例化对象的问题
是泛型,表示这个List集合中存放的是String类型的数据。
List是一个接口,接口是不可以实例化对象的,所以用这个接口的实现类实例化这个list对象,是多态的一种体现。
⑦ java 怎么创建一个list集合
java创建一个list集合,List是不能直接实例化的,所以要用其他的,如ArrayList。
1、Listtemp=newArrayList();
2、temp.add(xxx)。
⑧ Java List 用法
importjava.util.ArrayList;
importjava.util.Iterator;
importjava.util.List;
publicclassListDemo{
publicstaticvoidmain(String[]args){
Listlist=newArrayList();
//添加常规元素
list.add("hello");
list.add("world");
list.add("test");
System.out.println(list);
//插入一个新元素
list.add(2,"insertintoanewwordinthe2place");
System.out.println(list);
//删除
list.remove(1);
System.out.println("remove:"+list);
//获取
System.out.println("第二个list元素是:"+list.get(1));
System.out.println("bcde的索引位置是:"+list.indexOf("bcde"));
//修改
list.set(1,"listsetelement");
System.out.println("修改第二个元素:"+list);
//迭代取出集合中的所有元素
for(Iteratoriterator=list.iterator();iterator.hasNext();){
System.out.println("迭代取出集合中的所有元素:"+iterator.next());
}
//list集合特有的取出方式
for(inti=0;i<list.size();i++){
System.out.println("list集合特有的取出方式:"+list.get(i));
}
}
}
⑨ java中List<>是什么意思
List指的是集合.<>是泛型,里面指定了这个集合中存放的是什么数据.
比如有一个学生类Student,Student里面包含了学生的一些信息.这样每一个Student对象就代表了一个学生.此时List<Student>就代表这个集合中存放了很多个学生对象,这个集合就像一个班级一样.
⑩ java 创建一个名称为list的类。可以存储任何类型的参数
java提供了list set map 3中集合 list集合可以存放任何类型的参数
import java.io.Serializable; //所有数据类型的父类,
public class list(){
public static void main(String[] args){
List list = new ArrayList();
list(list,1); //调用下面的list方法 存放int类型的 1
list(list,"a"); //存放String 类型的a
System.out.println(list.get(0)+":"+list.get(1)); //打印list 的 第一个 和第二个值
}
public static void list(List list,Serializable ser){
list.add(ser);
}
}