Java学习-常用API-ArrayList

  • ArrayList的遍历并删除元素(案例)
  • ArrayList的常用api
  • ArrayList是一种泛型集合
  • ArrayList是什么?有何特点?作用?

importjava.util.ArrayList;

importjava.util.List;

publicclassapiArrayListDemo1{

publicstaticvoidmain(String[]args){

//常用api的使用

//1.创建一个空的集合对象

ArrayListList=newArrayList<>();List.add("黑马");List.add(5);

System.out.println(List);

//2.将指定元素添加到集合末尾

List.add("程序员");

System.out.println(List);

//3.在集合中指定位置插入指定的元素

List.add(1,"HHH");

System.out.println(List);

//4.返回指定索引处的元素

System.out.println(List.get(2));

//5.返回集合中元素的个数

System.out.println(List.size());

//6.删除指定索引处的元素,返回删除元素

System.out.println(List.remove(2));

System.out.println(List);

//7.删除指定索引处的元素,返回是否删除成功

System.out.println(List.remove("HHH"));

System.out.println(List);

//8.修改指定索引处的元素,返回被修改元素

System.out.println(List.set(1,"黑马"));

System.out.println(List);

}

}

packageapi;

importjava.awt.*;

importjava.util.ArrayList;

publicclassapiArrayListDemo2{

publicstaticvoidmain(String[]args){

//遍历并删除元素:去除低于80的数

//为集合初始化

ArrayList<Integer>numList=newArrayList<>();//这里不能使用基本数据类型,所以用Integer

numList.add(88);

numList.add(73);

numList.add(98);

numList.add(66);

numList.add(89);

numList.add(99);

numList.add(88);

numList.add(94);

System.out.println(numList);

System.out.println("----------------------");

for(inti=0;i<numList.size();i++){

if(numList.get(i)<=80){

Integerrm=numList.get(i);

numList.remove(rm);i--;

}

}

System.out.println(numList);

}

}

案例:1

packageapi;

importjava.util.ArrayList;

publicclassapiArrayListDemo3{

publicstaticvoidmain(String[]args){

ArrayList<String>shopList=newArrayList<>();

shopList.add("Java入门");

shopList.add("宁夏枸杞");

shopList.add("黑枸杞");

shopList.add("人字拖");

shopList.add("枸杞子");

/*for(inti=0;i<shopList.size();i++){

if(shopList.get(i).contains("枸杞")){

shopList.remove(shopList.get(i));i--;//此处如果不加i--,会出现bug

}

}*/

//方法二:倒着遍历数组

for(inti=shopList.size()-1;i>=0;i--){

if(shopList.get(i).contains("枸杞")){

shopList.remove(shopList.get(i));

}

}

System.out.println(shopList);

}

}

案例2:

 

packageapi;

publicclassfood{

privateStringname;

privateStringdesc;

privatedoubleprice;

publicfood(){

}

publicfood(Stringname,Stringdesc,doubleprice){

this.name=name;

this.desc=desc;

this.price=price;

}

publicStringgetName(){

returnname;

}

publicvoidsetName(Stringname){

this.name=name;

}

publicStringgetDesc(){

returndesc;

}

publicvoidsetDesc(Stringdesc){

this.desc=desc;

}

publicdoublegetPrice(){

returnprice;

}

publicvoidsetPrice(doubleprice){

if(price>0)

this.price=price;

}

}

packageapi;

importjava.util.ArrayList;

importjava.util.Scanner;

publicclassfoodOperate{

privateArrayList<food>foodList=newArrayList<>();

//上架功能

publicvoidaddFood(){

Scannersc=newScanner(System.in);

foodf=newfood();

System.out.println("请输入菜名:");

f.setName(sc.next());

System.out.println("请输入价格:");

f.setPrice(sc.nextDouble());

System.out.println("请输入描述:");

f.setDesc(sc.next());

foodList.add(f);

System.out.println("上架完成~~");

}

//浏览功能

publicvoidlookFood(){

if(foodList.size()==0){

System.out.println("您还没有上架菜品哦,快去上架~~");

}

for(inti=0;i<foodList.size();i++){

System.out.println("菜名:"+foodList.get(i).getName());

System.out.println("价格:"+foodList.get(i).getPrice());

System.out.println("描述:"+foodList.get(i).getDesc());

System.out.println("-------------------------------");

}

}

//设计功能选择页

publicvoidstart(){

Scannersc=newScanner(System.in);

System.out.println("欢迎光临!");

while(true){

System.out.println("请输入您希望办理的业务编号:");

System.out.println("1.上架菜品");

System.out.println("2.浏览菜单信息");

System.out.println("3.退出");

Stringcommand=sc.next();

switch((command)){

case"1":

addFood();

break;

case"2":

lookFood();

break;

case"3":

System.out.println("欢迎下次光临!!");

return;

default:

System.out.println("您输入的信息有误,请检查后重新输入!");

}

}

}

}

importapi.foodOperate;

publicclassapiArrayListDemo4{

publicstaticvoidmain(String[]args){

//结合面向对象编程完成案例

foodOperateFood=newfoodOperate();

Food.start();;

}

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/251385.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue3.0中从proxy中取值

使用vue3.0时&#xff0c;因为底层是使用proxy进行代理的所以当我们打印一些值的时候是proxy代理之后的&#xff0c;是Proxy 对象&#xff0c;Proxy对象里边的[[Target]]才是真实的对象。也是我们需要的 第一种获取target值的方式&#xff1a; import { toRaw } from vue; le…

Logback学习

logback 1、logback介绍 Logback是由log4j创始人设计的另一个开源日志组件&#xff0c;性能比log4j要好。 lockback优点&#xff1a; 内核重写、测试充分、初始化内存加载更小&#xff0c;这一切让logback性能和log4j相比有诸多倍的提升。logback非常自然地直接实现了slf4j…

学习Spring的第十三天

非自定义bean注解开发 设置非自定义bean : 用bean去修饰一个方法 , 最后去返回 , spring就把返回的这个对象,放到Spring容器 一 :名字 : 如果bean配置了参数 , 名字就是参数名 , 如果没有 , 就是方法名字 二 : 如果方法产生对象时 , 需要注入数据 , 在方法参数设置即可 , …

基于springboot就业信息管理系统源码和论文

随着信息化时代的到来&#xff0c;管理系统都趋向于智能化、系统化&#xff0c;就业信息管理系统也不例外&#xff0c;但目前国内仍都使用人工管理&#xff0c;市场规模越来越大&#xff0c;同时信息量也越来越庞大&#xff0c;人工管理显然已无法应对时代的变化&#xff0c;而…

Unity animator 动画实现指定时间开始播放

在我们使用Unity帧动画时&#xff0c;如用到同一个帧动画的部分动画&#xff0c;那么我们可以考虑用指定播放时间的方法实现。 如我在场景中创建一个2D帧动画&#xff0c;并创建一个2D对象使用该帧动画。 然后复制该2D对象&#xff0c;并创建一个控制脚本GameController1.cs&a…

【Docker】Docker Registry(镜像仓库)

文章目录 一、什么是 Docker Registry二、镜像仓库分类三、镜像仓库工作机制四、常用的镜像仓库五、常用命令镜像仓库命令镜像命令(部分)容器命令(部分) 六、docker镜像仓库实战综合实战一&#xff1a;搭建一个 nginx 服务综合实战二&#xff1a;Docker hub上创建自己私有仓库综…

【数据结构 09】哈希

哈希算法&#xff1a;哈希也叫散列、映射&#xff0c;将任意长度的输入通过散列运算转化为固定长度的输出&#xff0c;该输出就是哈希值&#xff08;散列值&#xff09;。 哈希映射是一种压缩映射&#xff0c;通常情况下&#xff0c;散列值的空间远小于输入值的空间。 哈希运…

正则表达式 与文本三剑客(sed grep awk)

一&#xff0c;正则表达式 &#xff08;一&#xff09;正则表达式相关定义 1&#xff0c;正则表达式含义 REGEXP&#xff1a; Regular Expressions&#xff0c;由一类特殊字符及文本字符所编写的模式&#xff0c;其中有些字符&#xff08;元字符&#xff09;不表示字符字面意…

编程实例分享,眼镜店电脑系统软件,配件验光管理顾客信息记录查询系统软件教程

编程实例分享&#xff0c;眼镜店电脑系统软件&#xff0c;配件验光管理顾客信息记录查询系统软件教程 一、前言 以下教程以 佳易王眼镜店顾客档案管理系统软件V16.0为例说明 如上图&#xff0c; 点击顾客档案&#xff0c;在这里可以对顾客档案信息记录保存查询&#xff0c;…

XUbuntu22.04之如何创建、切换多个工作区(二百零九)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

远程手机搭建Termux环境,并通过ssh连接Termux

背景 Termux只能通过鼠标点击&#xff0c;无法使用电脑键盘&#xff0c;输入速度很慢&#xff0c;你想通过ssh 连接Termux&#xff0c;获得友好体验搞了个云手机&#xff0c;想像普通手机那样充当服务器想把自己的手机公开到局域网中供同事调试想把自己的模拟器公开到局域网中…

红外模块详解

和红外有关的模块有很多&#xff0c;比如红外循迹&#xff0c;红外感应&#xff0c;红外发射&#xff0c;红外接收&#xff0c;红外对射&#xff0c;红外编解码等等。 今天我们要介绍的是红外编解码模块&#xff0c;它最常见的应用就是我们家里的电视、空调&#xff0c;当我们…

Java语法学习线程基础

Java语法学习线程基础 大纲 概念创建线程线程终止常用方法用户线程和守护线程线程的七大状态线程的同步互斥锁线程死锁释放锁 具体案例 1.概念 2. 创建线程 第一种&#xff1a; class Cat extends Thread {int time 0;Overridepublic void run() {while (true) {System.o…

HttpRunner自动化测试工具之获取响应数据extract提取值到变量

获取响应数据 extract: 提取 注&#xff1a;extract 应与request保持同一层级 1、响应行&#xff0c;响应头&#xff1b;通过 extract 提取响应的数据并存储到变量中&#xff0c;如下图&#xff1a; 注&#xff1a;变量名的前面要有 - # 获取响应数据: 响应行&#xff08;…

通过Nacos权重配置,实现微服务金丝雀发布效果(不停机部署)

在微服务项目迭代的过程中&#xff0c;不可避免需要上线&#xff1b;上线对应着部署&#xff0c;或者升级部署&#xff1b;部署对应着修改,修改则意味着风险。 传统的部署都需要先停止旧系统&#xff0c;然后部署新系统&#xff0c;之后需要对新系统进行全面的功能测试&#xf…

NAS系统折腾记 – Emby搭建家庭多媒体服务器

Emby简介 Emby是一款优秀的媒体服务器软件&#xff0c;致力于为用户提供丰富的多媒体体验。通过Emby&#xff0c;您可以方便地在家庭内的各种设备上观看您喜爱的电影、电视剧和其他视频内容。而且&#xff0c;Emby还具备强大的媒体管理功能&#xff0c;让您的影视资源井然有序…

设置Nginx进程最大可打开文件数

打开nginx.conf主配置文件。您需要配合worker_rlimit_nofile属性。如下&#xff1a; user root root; worker_processes 4; worker_rlimit_nofile 65535;#error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info;#pid logs/nginx.pid; …

26条prompt规则应用于大模型

1、引入动机 llm大模型在回答一些问题上表现出了惊人的能力&#xff0c;例如数学逻辑推理&#xff0c;代码生成&#xff0c;问题答复等。提词工程是和大预言模型交流的一门艺术。 大模型的返回结合和用户的指令和输入直接相关prompts是用户和大模型沟通的一种编码方式 一般地…

逆向基础-破解密码

1.通过study PE查看.exe程序的位数 打开 x32dbg 从暂停到运行程序 原理&#xff1a;软件算出的密码与用户输入的密码作比较 破解流程&#xff1a;查信息 --> 找内存关键数据 --> 测试

物流平台架构设计与实践

随着电商行业的迅猛发展&#xff0c;物流行业也得到了极大的发展。从最初的传统物流到现在的智慧物流&#xff0c;物流技术和模式也在不断的更新与升级。物流平台作为连接电商和物流的重要媒介&#xff0c;其架构设计和实践显得尤为重要。 一、物流平台架构设计 1. 前端架构设…