zoukankan      html  css  js  c++  java
  • 【简易版】Java ArrayList(增删改查)

    1、什么是ArrayList
    ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处:
    (1)动态的增加和减少元素
    (2)实现了ICollection和IList接口
    (3)灵活的设置数组的大小

    2、ArrayLis的创建以及增删改查方法

    (1)ArrayList的创建以及元素的添加ArrayList <变量名> = new ArrayList(); //()中也可传参。

    注释:上面是创建一个空的ArrayList列表。当我们想往列表中传递元素的时候是通过.add()的方法来进行赋值的。看一下下面的案例。另外要想输出出列表中的元素的话要通过for循环遍历。

    public class test {
    	public static void main(String[] args) {
    		ArrayList lis = new ArrayList();
    		
    		lis.add("tony");
    		lis.add("tom");
    		lis.add("jack");
    		lis.add("mary");
    		lis.add("even");
    		
    		for(int i=0;i<lis.size();i++){
    			String result = (String)lis.get(i);
    			System.out.println(result);
    		}
    

     结果:输出结果如下。

    tony
    tom
    jack
    mary
    even

    (2)ArrayList中元素的删除

    注释:变量名.remove(int Index); //通过.remove(int Index)方法来进行删除。这里直接传入要删除元素的下标即可。当然也可以直接传入值进行删除。如果你觉得用下边的方式比较麻烦那可以直接输入要删除项的值。

    package com.java.demo_9;
    
    import java.util.ArrayList;
    
    public class Arraylist {
    	public static void main(String[] args) {
    		ArrayList lis = new ArrayList();
    
    		lis.add("tony");
    		lis.add("tom");
    		lis.add("jack");
    		lis.add("mary");
    		lis.add("even");
    
    		System.out.println("---------------------------------");
    		
    		System.out.println("<ArrayList原列表元素>:");
    		
    		for (int i = 0; i < lis.size(); i++) {
    			String result = (String) lis.get(i);
    			System.out.println(result);
    		}
    		System.out.println("---------------------------------");
    		
    		System.out.println("<删除元素后的ArrayList列表>:");
    		
    		lis.remove(1);
    		
    		for (int i = 0; i < lis.size(); i++) {
    			String result = (String) lis.get(i);
    			System.out.println(result);
    		}
    		System.out.println("---------------------------------");
    	}
    }
    

    结果:因为我指定的是lis.remove(1); index是从0开始起始的因此1代表第2个元素。因此删除的是tom这个元素。

    <ArrayList原列表元素>:
    tony
    tom
    jack
    mary
    even
    ---------------------------------

    <删除元素后的ArrayList列表>:
    tony
    jack
    mary
    even
    ---------------------------------

    (3)ArrayList中元素的修改注释:ArrayList方法中有一个.set方法(变量.set(index, element);)。通过这个方法可以修改列表中的值。(index指定下标,element指定要修改后元素的值)。一起来看一下下面的示例。

    package com.java.demo_9;
    
    import java.util.ArrayList;
    
    public class Arraylist {
    	public static void main(String[] args) {
    		ArrayList lis = new ArrayList();
    
    		lis.add("tony");
    		lis.add("tom");
    		lis.add("jack");
    		lis.add("mary");
    		lis.add("even");
    
    		System.out.println("---------------------------------");
    		
    		System.out.println("<ArrayList原列表元素>:");
    		
    		for (int i = 0; i < lis.size(); i++) {
    			String result = (String) lis.get(i);
    			System.out.println(result);
    		}
    		System.out.println("---------------------------------");
    		
    		System.out.println("<修改后的ArrayList列表>:");
    		
    		//lis.remove("tom");
    		lis.set(2, "lucy");
    		
    		for (int i = 0; i < lis.size(); i++) {
    			String result = (String) lis.get(i);
    			System.out.println(result);
    		}
    		System.out.println("---------------------------------");
    	}
    }
    

     结果:通过下面的结果可以看出第3个下标中的值已经被改变了。本来是jack现在更改成了lucy。

    <ArrayList原列表元素>:
    tony
    tom
    jack
    mary
    even
    ---------------------------------

    <修改后的ArrayList列表>:
    tony
    tom
    lucy
    mary
    even
    ---------------------------------

    (3)ArrayList中元素的查找

    注释:.contains()是用来判断一个元素是否包含在另一个元素中的。所以这里是判断查找的元素是否包含在列表中。返回值方面我直接用的是打印的方法。也可以通过boolean,return的方式返回。

    案例1:

    import java.util.ArrayList;
    
    public class tes {
    	public static void main(String[] args) {
    		ArrayList lis = new ArrayList();
    		lis.add("tony");
    		lis.add("tom");
    		lis.add("jack");
    		lis.add("mary");
    		lis.add("even");
    		
    		if(lis.contains("vivian")){
    			System.out.println("包含此元素!");
    		}
    		else{
    			System.out.println("该元素不存在!");
    		}
    	}
    
    }
    

    结果:返回结果参照代码。找到了就打印“包含此元素,没找到就显示元素不存在。

    案例2:

    package com.java.demo_9;
    
    import java.util.ArrayList;
    
    public class ArrLis {
    
    	public static void main(String[] args) {
    		ArrayList list =new ArrayList();
    		
    		list.add("tony");
    		list.add("tom");
    		list.add("jack");
    		list.add("kevin");
    		
    		for(int i=0;i<list.size();i++){
    			String result =(String )list.get(i);
    			System.out.println(result);
    		}
    		System.out.println("+++++++++++++++++++++++++++++++++++++");
    		
    		ArrayList list1 = new ArrayList();
    		for(int i=0;i<list.size();i++){
    			String res = (String)list.get(i);
    			if(list.contains("kevin")){
    				list1.add("kevin");
    				System.out.println(list1);
    				break;
    			}else{
    				System.out.println("没找到该元素!");
    				break;
    			}
    		}
    	}
    
    }
    

    结果:因为列表中中包含"kevin"这个元素所以返回值为该元素。如果列表中没有该元素返回值为“没有找到该元素!”。

    注意事项:我是重新设定了一个新空ArrayList(list1)。目的就是为了如果找到该值把这个值直接放到新的ArrayList中。另外if,else用了2次break。就是只要找到或者没找到就退出的意思。如果不这么写那么for循环每找一次结果就会打印一次,这显然是不必要的。

    能够实现上例的方法很多,这里只介绍了ArrayList最基础的方法。仅供参考!

  • 相关阅读:
    ParallelStreamAPI
    VS Code 安装后的一些配置项
    RSA算法在Python Django中的简单应用
    DLL重定向处理
    Oracle和MySQL差异总结
    Oracle中Table函数简单应用实例
    数据库开发规范
    CentOS7安装开发工具套件时报错解决方案
    安装beanstalkd队列问题——No package beanstalkd available
    CentOS7配置yum源
  • 原文地址:https://www.cnblogs.com/liupengpengg/p/6062292.html
Copyright © 2011-2022 走看看