学习JAVA的第六天(基础)
目录
集合
集合和数组的对比
ArrayList成员方法
ArrayList成员方法代码展示
练习
集合的遍历01之字符串
集合的遍历02之数字
集合的遍历03之学生对象
集合
集合和数组的对比
- 从长度维度来看 数组长度固定 集合长度可变
- 从存储类型维度来看 数组可以存放基本数据类型和引用数据类型。集合只能存储引用数据类型, 如果要存放基本数据类型,需要将基本数据类型变成包装类。
ArrayList成员方法
方法名 | 说明 |
---|---|
boolean add(E e) | 添加元素,返回值表示是否添加成功 |
boolean remove(E e) | 删除指定元素,返回值表示是否删除成功 |
E remove(int index) | 删除指定索引的元素,返回被删除元素 |
E set(int index,E e) | 修改指定索引下的元素,返回原来的元素 |
E get(int index ) | 获取指定索引的元素 |
int size() | 集合的长度,即是集合中元素的个数 |
ArrayList成员方法代码展示
import java.util.ArrayList;public class Test19 {public static void main(String[] args) {//1.创建一个集合 <>里面是泛型 限制集合里面的元素类型ArrayList<String> list = new ArrayList<String>();//2.添加元素list.add("a"); //返回值为boolean类型list.add("b");//3.删除元素list.remove("a"); //返回值为boolean类型list.remove(0);//里面填索引,会返回被删除的元素//4.修改元素list.set(1,"c");//返回被修改的元素//5.查询元素list.get(0);//返回查询的元素//6.获取集合的长度list.size();}
}
练习
集合的遍历01之字符串
需求:定义一个集合,添加字符串,并进行遍历。结果:[元素1,元素2,元素3]
import java.util.ArrayList;public class Test20 {public static void main(String[] args) {//1.创建集合ArrayList<String> list = new ArrayList<String>();//2.添加元素list.add("zhang");list.add("re");list.add("da");list.add("ad");//3.遍历System.out.print("[");for(int i = 0;i < list.size();i++){if(i == list.size()-1){System.out.print(list.get(i));}else{//打印不换行System.out.print(list.get(i)+",");}}System.out.print("]");//结果 : [zhang,re,da,ad]}
}
集合的遍历02之数字
需求:定义一个集合,添加数字,并进行遍历。结果:[元素1,元素2,元素3]
问题 : 数字的泛型是什么?众所周知,集合里面要存放基本数据类型,需要将其变成包装类
基本数据类型对应的包装类
基本数据类型 | 包装类 |
---|---|
byte | Byte |
char | Character |
short | Short |
int | Integer |
boolean | Boolean |
float | Float |
double | Double |
long | Long |
import java.util.ArrayList;public class Test21 {public static void main(String[] args) {//1.创建集合 将int类型变成包装类IntegerArrayList<Integer> list = new ArrayList<>();//2.添加元素list.add(1);list.add(2);list.add(3);list.add(4);list.add(5);//3.遍历数组System.out.print("[");for(int i = 0;i < list.size();i++){if(i == list.size()-1) {System.out.print(list.get(i));}else{System.out.print(list.get(i)+",");}}System.out.print("]");}
}
//结果 [1,2,3,4,5]
集合的遍历03之学生对象
需求:定义一个集合,添加一些学生对象,并进行遍历学生类的属性(姓名,年龄)
1.创建Student类,并编写相关成员变量和成员方法以及构造方法
public class Student {//1.私有化成员变量//2.空参构造方法和带全部参数的构造方法//3.针对每个成员变量编写set方法和get方法private String name;private int age;//空参构造方法public Student() {}//带全部参数的构造方法public Student(String name,int age){this.name = name;this.age = age;}//关于名字name的get方法public String getName() {return name;}//关于名字name的set方法public void setName(String name) {this.name = name;}//关于年龄age的get方法public int getAge() {return age;}//关于年龄age的set方法public void setAge(int age) {this.age = age;}
}
2.定义一个集合,添加一些学生对象,并进行遍历学生类的属性(姓名,年龄)
import java.util.ArrayList;public class StudentTest {public static void main(String[] args) {//1.创建集合对象ArrayList<Student> list = new ArrayList<>();//2.创建学生对象 赋值属性Student s1 = new Student("张三",18);Student s2 = new Student("李四",19);Student s3 = new Student("王五",20);//3.添加元素list.add(s1);list.add(s2);list.add(s3);//4.遍历集合for (int i = 0; i < list.size(); i++) {Student stu = list.get(i);System.out.println(stu.getName()+" "+stu.getAge());}//5.运行结果
// 张三 18
// 李四 19
// 王五 20}
}
相关文章:
学习JAVA的第六天(基础)
目录 集合 集合和数组的对比 ArrayList成员方法 ArrayList成员方法代码展示 练习 集合的遍历01之字符串 集合的遍历02之数字 集合的遍历03之学生对象 集合 集合和数组的对比 从长度维度来看 数组长度固定 集合长度可变从存储类型维度来看 数组可以存放基本数据类型和…...

LeetCode 2673.使二叉树所有路径值相等的最小代价:自顶向下的DFS 或 自底向上的递推
【LetMeFly】2673.使二叉树所有路径值相等的最小代价:自顶向下的DFS 或 自底向上的递推 力扣题目链接:https://leetcode.cn/problems/make-costs-of-paths-equal-in-a-binary-tree/ 给你一个整数 n 表示一棵 满二叉树 里面节点的数目,节点编…...

9、电源管理入门之CPU Idle
目录 1. CPU Idle有什么用? 2. CPU Idle整体框架 3. Idle状态判断 3. cpuidle core 4. 注册初始化 4.1 cpuidle governor注册 4.2 cpuidle driver注册 4.3 cpuidle device注册 5. cpuidle触发流程 关于Linux的很多知识其实网上的资料非常的多,但是也有些问题: 有时…...
uniapp的扩展组件uni-popup 弹出层自动打开
我的需求是在页面加载完之后自动打开弹窗,自动打开只能写在onReady 或 mounted 生命周期内,这是这个组件的规定: 如果想在页面渲染完毕后就打开 uni-popup ,请在 onReady 或 mounted 生命周期内调用,确保组件渲染完毕…...
二、mysql常用函数
目录 一、Mysql数值型函数 二、Mysql字符串函数 三、Mysql日期和时间函数 四、Mysql聚合函数 五、Mysql流程控制函数 六、其他函数 一、Mysql数值型函数 函数名称 作用 abc 求绝对值 sqrt 求二次方根 mod 求余数 ceil 和 ceiling 功能一样,都是返回不小…...

【Redis | 第一篇】快速了解Redis
文章目录 1.快速了解Redis1.1简介1.2与其他key-value存储的不同处1.3Redis安装——Windows环境1.3.1下载redis1.3.2启动redis1.3.3进入redis客户端1.3.4修改配置 1.4Redis安装——Linux环境1.4.1安装命令1.4.2启动redis1.4.3进入redis客户端 1.5配置修改1.6小结 1.快速了解Redi…...

Vim 模式切换 | 命令集
Vim 模式切换 | 命令集 vim 主要模式及切换一、正常/普通/命令模式1 光标相关操作命令集1.1 光标移动1.2 文字删除1.3 粘贴和复制1.4 撤销1.5 字符更改 二、插入模式2.1 插入模式和命令行模式相互切换 三、末行模式2.1 末行模式和命令行模式相互切换2.2 末行模式相关命令集 四、…...

广和通5G智能模组SC171支持Android、Linux和Windows系统,拓宽智能物联网应用
世界移动通信大会2024期间,广和通宣布:5G智能模组SC171除支持Android操作系统外,还兼容Linux和Windows系统,帮助更多智能终端客户快速迭代产品,拓宽智能化应用覆盖范围。 广和通SC171系列基于高通QCM6490物联网解决方案…...

【51单片机】红外遥控红外遥控电机调速(江科大)
1.红外遥控简介 红外遥控是利用红外光进行通信的设备,由红外LED将调制后的信号发出,由专用的红外接收头进行解调输出 通信方式:单工,异步 红外LED波长:940nm 通信协议标准:NEC标准 2.硬件电路 红外发送部分 IN高电平时,LED不亮,IN低电平时&…...

kubesphere jenkins 流水线 未运行(解决方案)
场景: 在kubesphere 中运行 流水线 devops 结果,显示未运行 但是用 admin 账户是可以运行成功的。 问题解决 1- 查日志: 然后 Caused: org.acegisecurity.userdetails.UsernameNotFoundException: org.springframework.security.core.…...

如何保护服务器的安全
互联网的迅速发展,让很多企业都很重视网络技术的使用,但是网络的传播速度比较快,同时容易造成数据、隐私方面的泄露现在每个企业基本有自己的服务器。有几点需要注意,可以参考: 1.基础密码安全 最基本的安全就是密码安…...
Python使用HDL 模拟器实现 FPGA 板卡的仿真验证
Python 结合 HDL 模拟器实现 FPGA 板卡的仿真验证,您可以借助一些开源工具和库来实现这一目的。下面我将为您介绍一种常用的方法,使用 Python 结合 Verilog 模拟器和 FPGA 开发工具进行仿真验证。 ### 步骤概述 1. **编写 Verilog 设计**:首…...

vue中 input disable后无法触发点击事件
问题:input标签为disabled后,点击事项无效;当点击文字**“请选择”**时无法触发点击事件,其父标签的其余位置均可触发 解决:只需要在input标签中添加 style“pointer-events:none” 即可 pointer-events: none 作用是…...

实战一个 Jenkins 构建 CI/CD流水线 的简单配置过程哈
引言:上一期我们讲述了gitlabCI/CD工具的介绍,工具之争,本期我们介绍Jenkins CI/CD 目录 一、Jenkins介绍 1、Jenkins概念 2、Jenkins目的 3、特性 4、产品发布流程 二、安装Jenkins 1、安装JDK 2、安装Jenkins 1、上传压缩包 2、…...

【InternLM 实战营笔记】大模型评测
随着人工智能技术的快速发展, 大规模预训练自然语言模型成为了研究热点和关注焦点。OpenAI于2018年提出了第一代GPT模型,开辟了自然语言模型生成式预训练的路线。沿着这条路线,随后又陆续发布了GPT-2和GPT-3模型。与此同时,谷歌也…...

数据卷(Data Volumes) 自定义镜像(dockerfile)
目录 一. 数据卷(Data Volumes) 1.1 什么是数据卷 1.2 为什么需要数据卷 1.3 数据卷的作用 1.4 数据卷的使用 二. 自定义镜像(dockerfile) 2.1 什么是dockerfile 2.2 自定义centos 2.3 自定义tomcat 一. 数据卷(Data…...

数据库管理-第156期 Oracle Vector DB AI-07(20240227)
数据库管理156期 2024-02-27 数据库管理-第156期 Oracle Vector DB & AI-07(20240227)1 Vector相关DDL操作可以在现有的表上新增vector数据类型的字段:可以删除包含vector数据类型的列:可以使用CTAS的方式,从其他有…...

CASAtomic原子操作详解
什么是原子操作?如何实现原子操作? 我们在接触到事务的时候,了解到事务的一大特性是原子性,一个事务要么全部执行、要么全部不执行。 并发里的原子性和事务里的原子性有一样的内涵和概念。假定有2个操作A和B都包含多个步骤…...

真机测试——关于荣耀Magic UI系列HBuilder真机调试检测不到解决办法
出现这种状况怎么办 1、开启USB调试 2、重点来了——我们要选择USB配置,选择音频来源 3、连接OK...

代理IP安全问题:在国外使用代理IP是否安全
目录 前言 一、国外使用代理IP的安全风险 1. 数据泄露 2. 恶意软件 3. 网络攻击 4. 法律风险 二、保护国外使用代理IP的安全方法 1. 选择可信的代理服务器 2. 使用加密协议 3. 定期更新系统和软件 4. 注意网络安全意识 三、案例分析 总结 前言 在互联网时代&…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...
pam_env.so模块配置解析
在PAM(Pluggable Authentication Modules)配置中, /etc/pam.d/su 文件相关配置含义如下: 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块,负责验证用户身份&am…...
Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?
Redis 的发布订阅(Pub/Sub)模式与专业的 MQ(Message Queue)如 Kafka、RabbitMQ 进行比较,核心的权衡点在于:简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...
GitHub 趋势日报 (2025年06月06日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 590 cognee 551 onlook 399 project-based-learning 348 build-your-own-x 320 ne…...
HybridVLA——让单一LLM同时具备扩散和自回归动作预测能力:训练时既扩散也回归,但推理时则扩散
前言 如上一篇文章《dexcap升级版之DexWild》中的前言部分所说,在叠衣服的过程中,我会带着团队对比各种模型、方法、策略,毕竟针对各个场景始终寻找更优的解决方案,是我个人和我司「七月在线」的职责之一 且个人认为,…...

DBLP数据库是什么?
DBLP(Digital Bibliography & Library Project)Computer Science Bibliography是全球著名的计算机科学出版物的开放书目数据库。DBLP所收录的期刊和会议论文质量较高,数据库文献更新速度很快,很好地反映了国际计算机科学学术研…...

基于江科大stm32屏幕驱动,实现OLED多级菜单(动画效果),结构体链表实现(独创源码)
引言 在嵌入式系统中,用户界面的设计往往直接影响到用户体验。本文将以STM32微控制器和OLED显示屏为例,介绍如何实现一个多级菜单系统。该系统支持用户通过按键导航菜单,执行相应操作,并提供平滑的滚动动画效果。 本文设计了一个…...

相关类相关的可视化图像总结
目录 一、散点图 二、气泡图 三、相关图 四、热力图 五、二维密度图 六、多模态二维密度图 七、雷达图 八、桑基图 九、总结 一、散点图 特点 通过点的位置展示两个连续变量之间的关系,可直观判断线性相关、非线性相关或无相关关系,点的分布密…...
文件上传漏洞防御全攻略
要全面防范文件上传漏洞,需构建多层防御体系,结合技术验证、存储隔离与权限控制: 🔒 一、基础防护层 前端校验(仅辅助) 通过JavaScript限制文件后缀名(白名单)和大小,提…...

初探用uniapp写微信小程序遇到的问题及解决(vue3+ts)
零、关于开发思路 (一)拿到工作任务,先理清楚需求 1.逻辑部分 不放过原型里说的每一句话,有疑惑的部分该问产品/测试/之前的开发就问 2.页面部分(含国际化) 整体看过需要开发页面的原型后,分类一下哪些组件/样式可以复用,直接提取出来使用 (时间充分的前提下,不…...