「javalist写法」javalist类型
本篇文章给大家谈谈javalist写法,以及javalist类型对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、请教Java集合中List的用法
- 2、怎样用Java编写一个list
- 3、java 中创建list的语法
- 4、java 怎么创建一个list集合
- 5、java中List的用法?尽量详细解释,包括例子。
- 6、JAVA中list接口所有方法的写法,用实例,在线等!谢谢!本人是初学JAVA,见笑了!
请教Java集合中List的用法
你的第一种使用方式是JDK1.5才有的书写方式,叫泛型。
这确实和JDK的版本有关的。JDK1.5以前的版本(不包括1.5版本)是不支持的。如果你使用了JDK1.4的编译器,那么你的第一句是不能被编译通过的。
当你使用第一种方式书写时。那么,list中就必须储存String类型的数据。而不能储存别的类型数据了。当你使用后面的这种书写方式时,就没有类型限制了。
不过,推荐使用第一种方式,这样代码的可读性和以后的维护会比较方便。
希望对比有帮助。
怎样用Java编写一个list
import java.util.Iterator;
public class MyArrayList {
Object[] arr;
int size=0;
public MyArrayList(){
this(10);
}
public MyArrayList(int R){
arr=new Object[R];
}
public int size() {
return size;
}
public void add(Object obj){
if(arr.length=size+1){
arr[size]=obj;
size++;
}else{
int i=arr.length*3/2+1;
Object[] a2=new Object[i];
System.arraycopy(arr,0,a2,0, size);
a2[size]=obj;
size++;
arr=a2;
}
// if(arr.lengthsize+1){
// Object[] a=new Object[size*3/2+1];
// System.arraycopy(arr, 0, a, 0, size);
// arr=a;
// }
// arr[size]=obj;
// size++;
//}
}
public Object get(int i){
if(i0||i=size){
throw new ArrayIndexOutOfBoundsException(i);
}else{
return arr[i];
}
}
public Object set(int i,Object obj){
if(i0||i=size){
throw new ArrayIndexOutOfBoundsException(i);
}else{
size++;
Object o=arr[i];
for(int j=size-1;ji;j--){
arr[j]=arr[j-1];
}
arr[i]=obj;
return o;
}
}
public Object remove(int i){
if(i0||i=size){
throw new ArrayIndexOutOfBoundsException(i);
}else{
Object o=arr[i];
for(int j=i;jsize-1;j++){
arr[j]=arr[j+1];
}
size--;
// System.arraycopy(arr, i+1, arr, i,size-(i+1));
// arr[--size]=null;
return o;
}
}
public Iterator iterator(){
return new MyIterator();//创建迭代器并以父接口类型返回
}
private class MyIterator implements Iterator{//在内部类中可以不
int index=0;
public boolean hasNext(){
return indexsize;
}
public Object next(){
return arr[index++];
}
public void remove(){
MyArrayList.this.remove(index);//内部类调用外部类的方法
}
}
}
//注释为可替换代码
java 中创建list的语法
你可以试试
ListStringa = new ListString();会报错 因为List是接口
LinkedListStringa = new LinkedListString();这样是没问题的
ListStringa = new LinkedListString();
写这样子主要是好维护 它只操作接口 不操作类
那后面a.xxx()只涉及到接口了 不需要关心具体是哪个类实现接口
并且一般会将赋值单独抽取出来 写成setList() setA()之类的方法
如果需要换成其他类实现 只需要修改赋值代码即可
List a=new LiknedList改成List a=new ArrayList()其他的不用改
--------------------------------------------------------
如果用spring框架 就可以控制注入类所需类 更好维护 这都是后话 可以不看
java 怎么创建一个list集合
java创建一个list集合,List是不能直接实例化的,所以要用其他的,如ArrayList。
1、List temp=new ArrayList();
2、temp.add(xxx)。
其他解决方法:
1、ListString list = new ArrayListString();//创建集合对象;
2、list.Add("1");//在集合里存入数据。
3、list.Add("2");
4、List是一个接口,不能实例化,创建对象时要使用他的实现类ArrayList(其他)。
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接口所有方法的写法,用实例,在线等!谢谢!本人是初学JAVA,见笑了!
初学java最好到网上下个JDK API6.0里面有所有的应用程序接口介绍,想用哪个方法查哪个,非常方便
javalist写法的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于javalist类型、javalist写法的信息别忘了在本站进行查找喔。
发布于:2022-11-28,除非注明,否则均为
原创文章,转载请注明出处。