1. 集合基础

1.1 集合概述

1.2 ArrayList构造方法和添加方法

代码示例:

想通过指定索引添加到最后一个位置的话就填写,现有索引的+1,比如3个索引就是4.
如果在指定索引的位置添加没有的索引,就会报错(索引越界)。
运行结果:

1.3 ArrayList集合的常用方法

remove(Object o),删除指定的元素,返回删除是否成功。

如果是指定没有的元素,就是返回的false

remove(int index),删除指定索引|处的元素,返回被删除的元素。

运行结果:

指定删除未有的索引会报错(索引越界)

set(int index,E element)修改指定索引处的元素,返回被修改的元素。

运行结果:

指定修改未有的索引会报错(索引越界)

get(int index)返回指定索引处的元素。

运行结果:

int size()返回集合中的元素的个数。

运行结果:

1.4 案例

1.4.1 存储字符串并遍历

import java.util.ArrayList;

public class ArrayList1 {
public static void main(String[] args) {
ArrayList<String> array= new ArrayList<>(); array.add("hellow");
array.add("world");
array.add("java"); for (int i=0; i<array.size(); i++){
String s = array.get(i);
System.out.println(s);
}
}
}

运行结果:

hellow
world
java

1.4.2 存储学生对象并遍历

public class Student {
private String name;
private int age; public Student(){} public Student(String name,int age){
this.name = name;
this.age = age;
} public void setName(String name){
this.name = name;
} public String getName(){
return name;
} public void setAge(int age){
this.age = age;
} public int getAge(){
return age;
}
}
import java.util.ArrayList;

public class ArrayList2 {
public static void main(String[] args) {
//创建集合对象
ArrayList<Student> array = new ArrayList<Student>(); //创建学生对象
Student s1 = new Student("tom",3);
Student s2 = new Student("Bob",4);
Student s3 = new Student("Amy",6); //添加学生对象到集合中
array.add(s1);
array.add(s2);
array.add(s3); //遍历集合,采用通用遍历格式实现
for (int i=0; i<array.size(); i++){
Student s = array.get(i);
System.out.println(s.getName()+","+s.getAge());
} }
}

运行结果:

tom,3
Bob,4
Amy,6

1.4.3 存储学生对象并遍历

import java.util.ArrayList;
import java.util.Scanner; public class ArrayList4 {
public static void main(String[] args) {
ArrayList<Student1> array = new ArrayList<>(); //为增加代码复用性,采用方法来实现
addStudent1(array);
addStudent1(array);
addStudent1(array); for (int i=0; i<array.size(); i++){
Student1 s = array.get(i);
System.out.println(s.getName()+", "+s.getAge());
} } /*
明确:
返回值类型:void
参数:ArrayList<Student1> array
*/
public static void addStudent1(ArrayList<Student1> array){
Scanner sc = new Scanner(System.in); System.out.println("请输入学生名:");
String name = sc.nextLine(); System.out.println("请输入学生年龄:");
String age = sc.nextLine(); //创建学生对象
Student1 s = new Student1();
s.setName(name);
s.setAge(age); //在集合中添加学生对象
array.add(s); }
}

运行结果:

请输入学生名:
Tom
请输入学生年龄:
7
请输入学生名:
Bob
请输入学生年龄:
9
请输入学生名:
Amy
请输入学生年龄:
3
Tom, 7
Bob, 9
Amy, 3

Java基础00-集合基础15的更多相关文章

  1. [Java 教程 00] 计算机基础

    前言 我想,来到这的朋友肯定是想学习JAVA或者想要进入IT这个行业的.考虑到大家的基础可能不一样,有些人可能还是用着新买的电脑,为了让大家在后续的学习中更加顺畅.在学习一门全新的计算机语言之前,我需 ...

  2. Java Hour 13 集合基础

    有句名言,叫做10000小时成为某一个领域的专家.姑且不辩论这句话是否正确,让我们到达10000小时的时候再回头来看吧. 本文作者Java 现经验约为13 Hour,请各位不吝赐教. Java 中的集 ...

  3. java基础-Map集合

    java基础-Map集合 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Map集合概述 我们通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它 ...

  4. 第6节:Java基础 - 三大集合(上)

    第6节:Java基础 - 三大集合(上) 本小节是Java基础篇章的第四小节,主要介绍Java中的常用集合知识点,涉及到的内容包括Java中的三大集合的引出,以及HashMap,Hashtable和C ...

  5. Java基础--说集合框架

    版权所有,转载注明出处. 1,Java中,集合是什么?为什么会出现? 根据数学的定义,集合是一个元素或多个元素的构成,即集合一个装有元素的容器. Java中已经有数组这一装有元素的容器,为什么还要新建 ...

  6. Java基础之 集合体系结构(Collection、List、ArrayList、LinkedList、Vector)

    Java基础之 集合体系结构详细笔记(Collection.List.ArrayList.LinkedList.Vector) 集合是JavaSE的重要组成部分,其与数据结构的知识密切相联,集合体系就 ...

  7. Java Properties集合基础解析

    Java Properties集合基础解析 本期学习的properties集合是项目中经常用到的操作 什么是Properties集合? java.util.Properties集合继承于Hashtab ...

  8. 备战金三银四!一线互联网公司java岗面试题整理:Java基础+多线程+集合+JVM合集!

    前言 回首来看2020年,真的是印象中过的最快的一年了,真的是时间过的飞快,还没反应过来年就夸完了,相信大家也已经开始上班了!俗话说新年新气象,马上就要到了一年之中最重要的金三银四,之前一直有粉丝要求 ...

  9. java基础技术集合面试【笔记】

    java基础技术集合面试[笔记] Hashmap: 基于哈希表的 Map 接口的实现,此实现提供所有可选的映射操作,并允许使用 null 值和 null 键(除了不同步和允许使用 null 之外,Ha ...

随机推荐

  1. TVM性能评估分析(五)

    TVM性能评估分析(五) Figure 3.  A futher speed up with operator fusion Table 1.  Performance issue of cuBLAS ...

  2. ADAS车辆在行人安全方面得分很低

    ADAS车辆在行人安全方面得分很低 ADAS vehicles score poorly on pedestrian safety 对于热衷于自动驾驶汽车(AV)的狂热者来说,一个现在病毒性的视频片段 ...

  3. python2向python3移植问题

    问题: payload = "A"*140 # padding ropchain = p32(puts_plt) ropchain += p32(entry_point) ropc ...

  4. JUC下工具类CountDownLatch用法以及源码理解

    CountDownLoatch是JUC下一个用于控制计数的计数器,比如我需要从6开始计数,每个线成运行完之后计数减一,等计数器到0时候开始执行其他任务. public static void main ...

  5. 安全Web服务器

    https协议: 443 端口 虚拟Server0: 1.部署 网站证书(营业执照)# cd /etc/pki/tls/certs/ # wget http://classroom.example.c ...

  6. 【VBS】获取文件夹大小

    文件截图: 运行结果: 第一步:编写脚本 GetFloderSize.vbs 1 '获得文件夹的大小 by 王牌飞行员(https://www.cnblogs.com/KMould/p/1233481 ...

  7. 【linux】驱动-13-阻塞与非阻塞

    目录 前言 13. 阻塞与非阻塞 13.1 阻塞与非阻塞 13.2 休眠与唤醒 13.2.1 内核休眠函数 13.2.2 内核唤醒函数 13.3 等待队列(阻塞) 13.3.1 定义等待队列头部 13 ...

  8. Spring事务管理详解

    事务概念回顾 什么是事务? 事务是逻辑上的一组操作,要么都执行,要么都不执行. 事物的特性(ACID): 原子性: 事务是最小的执行单位,不允许分割.事务的原子性确保动作要么全部完成,要么完全不起作用 ...

  9. 《四大点,搞懂Redis到底快在哪里?》

    一.开发语言 二.纯内存访问 三.单线程 四.非阻塞多路I/O复用机制 前言 Redis是一种基于键值对(Key-Value)的NoSQL数据库 ,Redis的Value可以由String,hash, ...

  10. 6.10考试总结(NOIP模拟6)

    前言 就这题考的不咋样果然还挺难改的.. T1 辣鸡 前言 我做梦都没想到这题正解是模拟,打模拟赛的时候看错题面以为是\(n\times n\)的矩阵,喜提0pts. 解题思路 氢键的数量计算起来无非 ...