蓬莱建网站,中国电商公司排名,响应网站和模板网站,网站开发原型ArrayList相当于集合#xff0c;作为一种容器存储数据#xff0c;与数组类似。不同的是#xff0c;ArrayList中长度可变#xff0c;而数组长度不可变。 ArrayList相关API 构造器 public ArrayList() 创建一个空的集合对象 ArrayListStringarrnew ArrayList… ArrayList相当于集合作为一种容器存储数据与数组类似。不同的是ArrayList中长度可变而数组长度不可变。 ArrayList相关API 构造器 public ArrayList() 创建一个空的集合对象 ArrayListStringarrnew ArrayList();
长度获取 public int size() 添加元素 public boolean add(E e)将指定元素添加到此集合末尾 arr.add(Java);
arr.add(黑马); public void add(int index,E element)在集合中指定位置插入指定的元素 arr.add(1,MySQL);元素获取 public E get(int index)返回指定索引处的元素 String rsarr.get(1);
System.out.println(rs); 删除元素 public E remove(int index)删除指定索引处的元素并返回 arr.remove(1);
arr.remove(2);public boolean remove(Object O)删除指定的元素并返回是否删除成功 arr.remove(Java);
修改元素 public E set(int index,E element)修改指定索引处的元素返回原来的值 arr.set(1,IDEA);
ArrayList相关案例
从集合中批量删除元素
两种方式一种是从左往右一种是从右往左操作有些许不同
package com.itheima.hello;import java.util.ArrayList;
import java.util.Scanner;public class HelloWorld {public static void main(String args[]){ArrayListString arrnew ArrayList();arr.add(Java入门);arr.add(黑枸杞);arr.add(人字拖);arr.add(宁夏枸杞);arr.add(特级枸杞);arr.add(枸杞子);delete(arr);System.out.println(arr);for(int i0;iarr.size();i)//从左往右遍历要注意删完元素后后面的元素会往前移动但同时i又会往后移动因此可能有元素会被错过{String searr.get(i);if(se.contains(枸杞)){arr.remove(i);i--;}}System.out.println(arr);}public static void delete(ArrayListStringarr){ArrayListStringarr1new ArrayList(arr);//new一个,使用arr1避免修改arrfor(int iarr1.size()-1;i0;i--){String searr1.get(i);if(se.contains(枸杞)){arr1.remove(i);}}System.out.println(arr1);}
}使用ArrayList实现一个菜单
Food.java
package com.itheima.hello;public class Food {//菜品类private String name;//菜品名称private String desc;//描述private double price;//价格public Food() {}public Food(String name, double price, String desc) {this.name name;this.price price;this.desc desc;}public String getName() {return name;}public void setName(String name) {this.name name;}public String getDesc() {return desc;}public void setDesc(String desc) {this.desc desc;}public double getPrice() {return price;}public void setPrice(double price) {if(price0){System.out.println(价格设置错误,请重新设置);return;}this.price price;}}FoodOperator.java
package com.itheima.hello;import java.util.ArrayList;
import java.util.Scanner;public class FoodOperator {//菜品操作类负责完成对菜品的业务实现private ArrayListFoodfoodsnew ArrayList();//创建一个Food类,来存取数据public void addFood()//添加菜品{Scanner scnew Scanner(System.in);Food fnew Food();System.out.println(请输入菜品名称:);String namesc.next();f.setName(name);while(true){System.out.println(请输入菜品价格:);double pricesc.nextDouble();f.setPrice(price);if(price0)break;}System.out.println(请输入菜品描述:);String descsc.next();f.setDesc(desc);foods.add(f);//将它添加到集合中}public void showfood(){if(foods.size()0){System.out.println(您没有添加任何菜品,快去添加菜品吧);return;}for (int i 0; i foods.size(); i) {Food fofoods.get(i);String namefo.getName();double pricefo.getPrice();String descfo.getDesc();System.out.println(name);System.out.println(price);System.out.println(desc);System.out.println(-------------);}}public void start(){while (true){System.out.println(1.添加菜品);System.out.println(2.展示菜品);System.out.println(3.退出系统);System.out.println(请选择您的操作:);Scanner sc new Scanner(System.in);String id sc.next();switch (id) {case 1:addFood();break;case 2:showfood();break;case 3:System.out.println(欢迎下次光临);return;default:System.out.println(输入指令错误,请重新输入);break;}}}
}HelloWorld.java
package com.itheima.hello;import java.util.ArrayList;
import java.util.Scanner;public class HelloWorld {//设计一个菜品的展示界面//进行上架功能添加商品名字商品价格商品描述//进行展示显示所有的商品及其信息public static void main(String args[]){FoodOperator foodopnew FoodOperator();//相当于设计了一个页面foodop.start();}}