学习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. 注意网络安全意识 三、案例分析 总结 前言 在互联网时代&…...
告别数据丢失!用F460的PVD2做个掉电预警,关键时刻保存关键数据
嵌入式系统的守护者:F460 PVD2掉电保护实战指南 想象一下这样的场景:你的工业设备正在野外执行关键数据采集,突然遭遇断电,所有未保存的传感器数据瞬间消失;或者医疗设备在手术过程中因电池接触不良导致电压骤降&#…...
信号处理实战:如何为你的ECG心电信号或音频降噪任务挑选合适的小波函数?
信号处理实战:如何为ECG心电信号或音频降噪挑选合适的小波函数? 第一次处理ECG信号时,我被监护仪输出的波形吓了一跳——那些本该清晰的心跳信号上爬满了高频噪声,就像老式电视机失去信号时的雪花屏。当时导师只说了一句ÿ…...
一键下载30+文档平台:kill-doc让你轻松保存网页内容
一键下载30文档平台:kill-doc让你轻松保存网页内容 【免费下载链接】kill-doc 看到经常有小伙伴们需要下载一些免费文档,但是相关网站浏览体验不好各种广告,各种登录验证,需要很多步骤才能下载文档,该脚本就是为了解决…...
AT32F403A/STM32F103内部Flash读写避坑指南:从扇区擦除到数据校验的实战经验
AT32F403A/STM32F103内部Flash读写避坑指南:从扇区擦除到数据校验的实战经验 在嵌入式开发中,内部Flash的可靠读写往往是产品稳定性的关键所在。许多开发者按照基础教程完成功能后,却在量产阶段遭遇数据丢失、写入失败等棘手问题。本文将深入…...
AD9361实战笔记:手把手教你配置Tx功率监控(TPM)与RSSI校准
AD9361实战笔记:手把手教你配置Tx功率监控(TPM)与RSSI校准 在射频系统设计中,精确的功率监控和信号强度测量是确保通信质量的关键环节。AD9361作为一款高度集成的射频收发器,其内置的发射功率监控(TPM&…...
告别英文困扰:3步实现Android Studio界面全面汉化
告别英文困扰:3步实现Android Studio界面全面汉化 【免费下载链接】AndroidStudioChineseLanguagePack AndroidStudio中文插件(官方修改版本) 项目地址: https://gitcode.com/gh_mirrors/an/AndroidStudioChineseLanguagePack 还在为Android Stud…...
5分钟掌握Applite:macOS上最简单免费的Homebrew图形界面应用商店
5分钟掌握Applite:macOS上最简单免费的Homebrew图形界面应用商店 【免费下载链接】Applite User-friendly GUI macOS application for Homebrew Casks 项目地址: https://gitcode.com/gh_mirrors/ap/Applite 还在为macOS应用管理而烦恼吗?Applite…...
从AMP到BMP:在ZYNQ上玩转多核任务绑定的三种模式对比与选型指南
从AMP到BMP:ZYNQ多核架构设计的黄金三角法则 当你在ZYNQ-7000平台上启动第二个Cortex-A9核心时,就像打开了潘多拉魔盒——性能提升的诱惑与资源冲突的风险并存。我曾亲眼见证一个工业控制器项目因为双核内存访问冲突导致产线停机,也参与过某医…...
零基础搞定PyTorch 2.8+RTX 4090D:开箱即用的深度学习环境配置
零基础搞定PyTorch 2.8RTX 4090D:开箱即用的深度学习环境配置 1. 为什么选择预构建的PyTorch镜像? 想象一下这个场景:你刚拿到一台配置RTX 4090D显卡的高性能服务器,准备开始深度学习项目。按照传统方式,你需要&…...
代码生成率提升300%,发布回滚率却飙升210%?这才是2024最紧急的DevSecOps盲区!
第一章:智能代码生成 2026奇点智能技术大会(https://ml-summit.org) 智能代码生成正从辅助编程工具演进为开发流程的核心引擎。现代大语言模型(LLM)通过理解上下文语义、项目结构和领域约束,可直接产出符合生产规范的函数级乃至模…...
