当前位置: 首页 > wzjs >正文

基础网站建设公司班级优化大师下载安装app

基础网站建设公司,班级优化大师下载安装app,超值的镇江网站建设,做网站软件ps一、 ArrayList快速入门 学习完String类之后,接下来再学习一个类——叫ArrayList。 ArrayList表示一种集合,它是一个容器,用来装数据的,类似于数组。那有了数组,为什么要有集合呢? 因为数组一旦创建大小…

一、 ArrayList快速入门

学习完String类之后,接下来再学习一个类——叫ArrayList。

ArrayList表示一种集合,它是一个容器,用来装数据的,类似于数组。那有了数组,为什么要有集合呢?

因为数组一旦创建大小不变,比如创建一个长度为3的数组,就只能存储3个元素,想要存储第4个元素就不行。而集合是大小可变的,想要存储几个元素就存储几个元素,在实际工作中用得更多。

然后集合有很多种,而ArrayList只是众多集合中的一种。如下图所示:

集合该怎么学呢?

1. 首先你要会创建集合对象,

2. 然后能够调用集合提供的方法对容器中的数据进行增删改查,

3. 最后知道集合的一些特点就可以了。

(一) ArrayList常用方法

想要使用ArrayList存储数据,并对数据进行操作:

  • 第一步:创建ArrayList容器对象。一般使用空参数构造方法,如下图所示:
  • 第二步:调用ArrayList类的常用方法对容器中的数据进行操作。常用方法如下:

(二) 快速熟悉 ArrayList 集合的常用方法

package nuyoah.arraylist;import java.util.ArrayList;public class ArrayListDemo1 {public static void main(String[] args) {// 目标:掌握ArrayList集合的创建和使用。// 1、创建ArrayList集合的对象代表一个容器(大小可变,数据可以重复,有索引)// ArrayList<String> list = new ArrayList<String>();ArrayList<String> list = new ArrayList<>(); // JDK7之后后面类型可以不写list.add("java1");list.add("java1");list.add("金庸");// list = [java1, java1, 金庸]System.out.println(list);// 2、插入数据list.add(1, "嵌入式");System.out.println(list);// 3、根据索引获取数据 :list = [java1, 嵌入式, java1, 金庸]//                            0       1      2     3String ele = list.get(3);System.out.println(ele);// 4、获取集合的大小(元素个数)System.out.println("集合的元素个数:" + list.size());// 5、根据索引删除数据,返回被删除的数据。System.out.println(list.remove(1));System.out.println(list);// 6、直接删除数据,返回真假 , 默认只能删除第一个出现的。System.out.println(list.remove("java1"));System.out.println(list);// 7、修改某个索引位置处的数据,返回修改前的数据  list = [java1, 金庸]System.out.println(list.set(1, "古龙"));System.out.println(list);}
}

二、ArrayList应用案例

(一) 掌握从容器中找出某些数据并成功 v

需求:

现在假如购物车中存储了如下这些商品:Jva入门,宁夏枸杞,黑枸杞,人字拖,特级枸杞,枸杞子。现在用户不想买枸杞了,选择了批量删除,请完成该需求。

分析:

  1. 后台使用ArrayList集合表示购物车,存储这些商品名。
  2. 遍历集合中的每个数据,只要这个数据包含了“枸杞”则删除它。
  3. 输出集合看是否已经成功删除了全部枸杞数据了。
package nuyoah.arraylist;import java.util.ArrayList;
/***  @Project_Name: ArrayListDemo2.java*  @Author: Natural Pride*  @Date: 2025/2/15 18:00*  @Description:TODO*/
public class ArrayListDemo2 {public static void main(String[] args) {// 目标:掌握从容器中删除数据的技巧。// 1、准备一个集合,存储一堆商品ArrayList<String> list = new ArrayList<>();list.add("Java入门");list.add("宁夏枸杞");list.add("黑枸杞");list.add("人字拖");list.add("特技枸杞");list.add("枸杞子");System.out.println(list);//  list = [Java入门, 宁夏枸杞, 黑枸杞, 人字拖, 特技枸杞, 枸杞子]//  list = [Java入门, 宁夏枸杞, 黑枸杞, 人字拖, 特技枸杞, 枸杞子]//                     i// 遍历集合中的每个数据,只要这个数据包含枸杞,我们就从集合中删除这个数据。for (int i = 0; i < list.size(); i++) {String name = list.get(i);if(name.contains("枸杞")) {// 从集合中直接干掉这个数据list.remove(name);i--; // 解决方案一:删完数据后回退一步,才可以保证成功删除数据,不会漏删}}System.out.println(list);System.out.println("==================");ArrayList<String> list2 = new ArrayList<>();list2.add("Java入门");list2.add("宁夏枸杞");list2.add("黑枸杞");list2.add("人字拖");list2.add("特技枸杞");list2.add("枸杞子");// 解决方案二:从后面倒着遍历并删除就没有问题了。// list2 = [Java入门, 宁夏枸杞, 黑枸杞, 人字拖, 特技枸杞, 枸杞子]// list2 = [Java入门, 人字拖]//             ifor (int i = list2.size() - 1; i >= 0; i--) {String name = list2.get(i);if(name.contains("枸杞")) {// 从集合中直接干掉这个数据list2.remove(name);}}System.out.println(list2);}
}

运行结果

(二) ArrayList的综合案例-模仿外卖系统中的商家系统

需求:完成菜品的上架、以及菜品信息浏览功能。

目标:使用所学的ArrayList集合结合面向对象编程实现以上2个需求。

分析需求发现:

  1. 在外卖系统中,每一份菜都包含,菜品的名称、菜品的原价、菜品的优惠价、菜品的其他信息。那我们就可以定义一个菜品类(Food类),用来描述每一个菜品对象要封装那些数据。
  2. 接着再写一个菜品管理类(FoodManager类),提供展示操作界面、上架菜品、浏览菜品的功能。
  • 首先我们先定义一个菜品类(Food类),用来描述每一个菜品对象要封装那些数据。
package nuyoah.arraylist.comCase;/***  @Project_Name: Food.java*  @Author: Natural Pride*  @Date: 2025/2/15 17:09*  @Description:TODO 菜单类*/public class Food {private String name;private double price;private String desc; // 描述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 double getPrice() {return price;}public void setPrice(double price) {this.price = price;}public String getDesc() {return desc;}public void setDesc(String desc) {this.desc = desc;}
}
  • 接下来写一个菜品管理类,提供上架菜品的功能、浏览菜品的功能、展示操作界面的功能
package nuyoah.arraylist.comCase;import java.util.ArrayList;
import java.util.Scanner;
/***  @Project_Name: FoodOperator.java*  @Author: Natural Pride*  @Date: 2025/2/15 17:09*  @Description:TODO 菜品操作类*/public class FoodOperator {// 1、准备一个容器负责存储上架的全部菜品。
//  private   int            id         = 1; 与下面变量定义原理相同private ArrayList<Food> allFoods = new ArrayList<>();private Scanner sc = new Scanner(System.in);public void addFood() {System.out.println("==============上架菜品==============");// a、用户每上架一次菜品实际上就是在集合中新增一个菜品对象。Food f = new Food();// b、为菜品对象注入菜品的数据。System.out.println("菜品名称:");String name = sc.next();f.setName(name);System.out.println("菜品价格:");double price = sc.nextDouble();f.setPrice(price);System.out.println("菜品描述:");String desc = sc.next();f.setDesc(desc);// c、把菜品对象添加到集合容器中去。allFoods.add(f);System.out.println("菜品上架成功!");}public void removeFood() {System.out.println("请输入要下架的菜品名称:");String name = sc.next();for (int i = 0; i < allFoods.size(); i++) {if(allFoods.get(i).getName().equals(name)) {// 找到了,删除allFoods.remove(i);break;}}}public void showAllFoods() {System.out.println("==============全部菜品==============");for (int i = 0; i < allFoods.size(); i++) {Food food = allFoods.get(i);System.out.println(food.getName() + "\t" + food.getPrice() + "\t" + food.getDesc());}}public void start() {while (true) {System.out.println("=============商家管理系统=============");System.out.println("1、上架菜品");System.out.println("2、下架菜品(作业)");System.out.println("3、展示菜品");System.out.println("请您输入操作功能“:");int command = sc.nextInt();switch (command) {case 1:// 上架: 独立功能独立成方法addFood();break;case 2:// 下架removeFood();break;case 3:// 展示showAllFoods();break;default:System.out.println("输入错误!");}}}}

最后在写一个测试类进行测试

package nuyoah.arraylist.comCase;/***  @Project_Name: ArrayListTest3.java*  @Author: Natural Pride*  @Date: 2025/2/15 17:44*  @Description:TODO*/
public class ArrayListTest3 {public static void main(String[] args) {// 目标:完成菜品上架,浏览功能。结合面向对象编程和ArrayList.// 1、每个菜品是一个对象,定义菜品类,用于创建菜品对象封装菜品数据。// 2、定义一个菜品操作类,用于创建菜品操作对象负责对菜品数据进行业务处理。FoodOperator operator = new FoodOperator();operator.start();}
}

运行结果:

http://www.dtcms.com/wzjs/92380.html

相关文章:

  • 做产品设计之前怎么查资料国外网站中小企业网站制作
  • 什么学习网站建设网络公司关键词排名
  • b2b网站seo怎么做收录国际新闻最新消息十条摘抄
  • 重庆网站建设设计公司信息semi final
  • cod建站系统seo搜索引擎优化的内容
  • ppt模板免费下载 素材红色主题搜索引擎优化岗位
  • 好的排版设计网站广告接单平台有哪些
  • 烟台网站建设联系电话seo内部优化包括哪些内容
  • 网站编写流程seo搜索优化邵阳
  • 珠海网络营销推广广州seo代理
  • 做自己照片视频网站西安自助建站
  • 大连网站设计菲尔莱斯百度指数的使用方法
  • 网站访问 测试上海百度推广官方电话
  • 重庆市建设工程造价管理站seo怎么刷排名
  • 做百度推广网站得多少钱推广网站免费
  • it前端是做网站的seo关键词有话要多少钱
  • 360怎么做网站互联网营销培训课程
  • 平台类网站做多久磁力搜索引擎torrentkitty
  • 做装修那个网站好chrome官方下载
  • 网站设计论文答辩资源网站优化排名软件
  • 长沙网站建设团队广告联盟大全
  • 重庆建网站推广价格线上推广渠道有哪些
  • 电子商务网站开发分几个模块百度直播
  • 东莞正规的企业网站设计多少钱网站优化的方式有哪些
  • 网站建设及报价惠州百度seo哪家好
  • php网站接入支付宝关键词智能优化排名
  • dede网站模板页在什么文件夹宁波怎么优化seo关键词
  • 怎么做动态网站视频短片优化关键词步骤
  • c2c网站模板b站推广网站2024年
  • 河北省建设厅网站怎么登陆乐天seo视频教程