ArrayList集合(Java)
ArrayList集合
- ArrayList 当中的常用方法:
- 代码如下(示例):
- ArrayList集合存储基本数据类型
- 代码如下(示例):
- ArrayList练习
- 练习一:存储随机数字
- 练习二:存储自定义对象
- 练习三:按指定格式遍历集合字符串
- 练习四:筛选集合中的随机数
ArrayList 当中的常用方法:
Public boolean add(E e)
- 向集合当中添加元素,参数的类型和泛型一致,返回值代表是否成功
备注:对于ArrayList集合来说,add添加动作一定是成功的,所以返回值可用可不用,但是对于其他集合来说,add添加动作不一定成功
public E get(int index)
- 从集合当中获取元素,参数是索引编号
public E remove(int index)
- 从集合当中删除元素,参数是索引编号,返回值就是被删除掉的元素
public int size()
- 获取集合的尺寸长度,返回值是集合中包含的元素个数
代码如下(示例):
import java.util.ArrayList;
public class Main {public static void main(String[] args) {ArrayList<String> list = new ArrayList<>();System.out.println(list);//向集合中添加元素:addboolean success = list.add("柳岩");System.out.println(list);System.out.println("添加的动作是否成功:"+success);list.add("高媛媛");list.add("赵又廷");list.add("李小璐");list.add("贾乃亮");System.out.println(list); //[柳岩, 高媛媛, 赵又廷, 李小璐, 贾乃亮]//从集合中获取元素:get,索引值从0开始String name = list.get(2);System.out.println("第二号索引位置是:"+name); //赵又廷//从集合中删除元素:remove,索引值从0开始String whoRemove = list.remove(3);System.out.println(whoRemove+"被删除"); //李小璐被删除System.out.println(list); //[柳岩, 高媛媛, 赵又廷, 贾乃亮]//获取集合的长度尺寸int size = list.size();System.out.println("集合的长度是:"+size); //4//遍历集合for (int i = 0; i < list.size(); i++) {System.out.println(list.get(i));}}
}
ArrayList集合存储基本数据类型
- 泛型只能是引用类型,不能是基本类型
如果希望像集合ArrayList当中存储基本数据,必须使用基本类型对应的"包装类"
- 从JDK 1.5开始,支持自动装箱、自动拆箱
自动装箱:基本类型 → 包装类型
自动拆箱:包装类型 → 基本类型
基本类型 | 包装类(引用类型,包装类都位于java.lang包下) |
---|---|
byte | Byte |
short | Short |
int | Integer 【特殊】 |
long | Long |
float | Float |
double | Double |
char | Character 【特殊】 |
boolean | Boolean |
代码如下(示例):
import java.util.ArrayList;
public class Main {public static void main(String[] args) {ArrayList<Integer> list = new ArrayList<>();list.add(100);list.add(200);System.out.println(list); //[100, 200]Integer num = list.get(1);System.out.println("第一号元素是:"+num);}
}
ArrayList练习
练习一:存储随机数字
生成6个1~33之间的随机整数,添加到集合,并遍历集合
思路:
1、需要随机存储6个数字,创建一个集合 <Interger>
2、产生随机数,需要用到Random
3、用循环6次,来产生6个随机数字:for循环
4、循环内调用r、nextInt(int n)、参数是33,0-32,整体+1才是1-33
5、把数字添加到集合中:add
6、遍历集合:for、size、get
import java.util.ArrayList;
import java.util.Random;public class Main {public static void main(String[] args) {//创建一个集合ArrayList<Integer> list = new ArrayList<>();//产生随机数Random r = new Random();//r.nextInt()的括号里面要输入随机数的范围//把数字添加到集合中for (int i = 0; i < 6; i++) {list.add(r.nextInt(33)+1);}//遍历集合for (int i = 0; i < list.size(); i++) {System.out.println(list.get(i));}}
}
练习二:存储自定义对象
自定义4个学生对象,添加到集合,并遍历
思路:
1、自定义Student学生类,四个部分。
2、创建一个集合,用来存储学生对象,泛型:<Student>
3、根据类,创建4个学生对象
4、将4个学生对象添加到集合中:add
5、遍历集合:for、size、get
import java.util.ArrayList;
public class Main {public static void main(String[] args) {ArrayList<Student> list= new ArrayList<>();//根据类,创建4个学生对象Student one = new Student("洪七公",18);Student two = new Student("欧阳峰",19);Student three = new Student("黄药师",20);Student four = new Student("段智兴",21);//添加到集合中list.add(one);list.add(two);list.add(three);list.add(four);//遍历集合for (int i = 0; i < list.size(); i++) {Student stu = list.get(i);System.out.println("姓名:"+stu.getName()+",年龄:"+stu.getAge());}}
}
public class Student {private String name; //姓名private int age; //年龄//Code->Generate->Getter and Setter/Constructor//快捷键:Alt+Insertpublic Student() {}public Student(String name, int age) {this.name = name;this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}
}
练习三:按指定格式遍历集合字符串
定义以指定格式打印集合的方法(ArrayList类型作为参数),使用{}扩起集合,使用@分隔每个元素。
格式参照{元素@元素@元素}
思路:
System.out.println(list); [10,20,30]
printfArrayList(list); {10@20@30}
定义方法的三要素:
△返回值类型:只是进行打印而已,没有运算,没有结果;所以用void
△方法名称:printArrayList
△参数列表:ArrayList
import java.util.ArrayList;
public class ArrayRandom {public static void main(String[] args) {ArrayList<String> list = new ArrayList<>();list.add("张无忌");list.add("张三丰");list.add("宋远桥");list.add("张翠山");System.out.println(list);printArrayList(list);}public static void printArrayList(ArrayList<String> list) {// {10@20@30}System.out.println("{");for (int i = 0; i < list.size(); i++) {String name=list.get(i);if (i == list.size() - 1) {System.out.println(name + "}");} else {System.out.print(name + "@");}}}
}
练习四:筛选集合中的随机数
用一个大集合存入20个随机数字,然后筛选其中的偶数元素,放到小集合当中,要求使用自定义的方法来实现筛选。
思路:
1、需要创建一个大集合,用来存储int数字:<Integer>
2、随机数字就用Random nextInt
3、循环20次,把随机数字放入大集合:for循环、add方法
4、定义一个方法,用来进行筛选
筛选:根据大集合,筛选符合要求的元素,得到小集合
三要素:返回值类型:ArrayList小集合(里面元素个数不确定)
方法名称:getSmallList
参数列表:ArrayList大集合(装在20个随机数字)
5、判断(if)是偶数:num%2==0
6、如果是偶数,就放到小集合当中,否则不放
import java.util.ArrayList;
import java.util.Random;
public class Main {public static void main(String[] args) {ArrayList<Integer> bigList = new ArrayList<>();Random r= new Random();for (int i = 0; i < 20; i++) {int num = r.nextInt(100) + 1; //1~100bigList.add(num);}ArrayList<Integer> smallList = getSmallList(bigList);System.out.println("偶数总共有多少个:" + smallList.size());for (int i = 0; i < smallList.size(); i++) {System.out.println(smallList.get(i));}}// 这个方法,接受大集合参数,返回小集合结果public static ArrayList<Integer> getSmallList(ArrayList<Integer> bigList) {// 创建一个小集合,用来状偶数结果ArrayList<Integer> smallList = new ArrayList<>();for (int i = 0; i < bigList.size(); i++) {int num = bigList.get(i);if (num % 2 == 0) {smallList.add(num);}}return smallList;}
}
ArrayList集合(Java)相关推荐
- mybatis中传集合时 报异常 invalid comparison: java.util.Arrays$ArrayList and java.lang.String
mybatis中传集合时 报异常 invalid comparison: java.util.Arrays$ArrayList and java.lang.String 参考文章: (1)mybati ...
- java print快捷键_Java的ArrayList集合使用---唐代诗人斗地主!!!
一.集合如何实现斗地主? 我们现实生活中关于斗地主,首先要有一副牌,然后把牌洗一下,在然后发牌,最后抢地主!因此斗地主需要以下的5步! 创建牌盒,定义一个集合对象,用ArrayList实现 往牌盒里装 ...
- java 集合自定义元素_java集合 collection-list-ArrayList 将自定义对象作为元素存到ArrayList集合中,并去除重复元素。...
import java.util.*;/*将自定义对象作为元素存到ArrayList集合中,并去除重复元素. 比如:存人对象.同姓名同年龄,视为同一个人.为重复元素. 思路: 1,对人描述,将数据封装 ...
- Java的ArrayList集合_JAVA之ArrayList集合
/** * ArrayList集合讲解 * 集合的添加.遍历.删除 */ package com.test; import java.util.*; public class test7 { /** ...
- (Java)ArrayList集合
ArrayList集合概述和基本使用 ArrayList是可以动态增长和缩减的索引序列,它是基于数组实现的List类. 数组的长度不可以发生改变,但是ArrayList的长度是可以随时变化的 对于Ar ...
- JAVA之ArrayList集合
/** * ArrayList集合讲解 * 集合的添加.遍历.删除 */ package com.test; import java.util.*; public class test7 { / ...
- java集合的添加方法_深入理解java集合框架之---------Arraylist集合 -----添加方法
Arraylist集合 -----添加方法 1.add(E e) 向集合中添加元素 /** * 检查数组容量是否够用 * @param minCapacity */ public void ensur ...
- Java基础知识学习04-自定义类、ArrayList集合
类与对象 类是一个模子,确定对象将会拥有的特征(属性)和行为(方法). 类的特征:类是对象的类型 具有相同属性和方法的一组对象的集合 类的组成:属性和方法 定义一个类:public class 类名 ...
- java学习(116):arraylist集合实现类
import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; //员工信息类 //dat ...
最新文章
- 40+场面试,100%通过率,我想分享的14条经验
- php ajax成功失败,php – 让$.ajax失败
- mysql in or索引失效_in 索引失效的问题
- 如何处理VirtualBox启动错误消息:The vboxdrv kernel module is not loaded
- html多出的空白页怎么删除,word多出一页空白页怎么删除,这4个方法总有一个能解决,真实挂机网赚项目...
- Python_列表2
- 又一中科院AI创业公司浮出水面,刚拿下AIC挑战赛视觉感知冠军
- 5.1、python remove和del的区别,python 循环删除元素
- 畅玩树莓派4B(一)树莓派系统安装和SSH连接
- Screw一键生成数据库文档工具
- 酒诗词之一(七言诗)
- 网关Gateway的介绍与使用
- 第三单元 :资本成本笔记
- 从Adobe调查问卷看原型设计工具大战
- Java 操作 ElasticSearch
- vijos- P1383盗窃-黑珍珠 (python + 代码优化)
- [ Python ] 数据挖掘:股票价格
- 人脸识别选这几家就对了!
- 拓展模块使用教程和心得(四):PWM脉冲宽度调制及普通有刷马达和空心杯电机(测试平台:STC8A8K,STM32F103)
- Win10右键管理打不开时,显示explorer.exe:Windows无法访问指定设备,路径或文件。你可能没有合适的权利访问这个项目
热门文章
- 数学建模之灰色关联分析
- 中考词汇测试软件,中考英语单词必备app
- Coding and Paper Letter(八十二)
- solr引入mysql数据库数据,出现Requests: 1, Fetched: 0, Skipped: 0, Processed: 0
- mysql存储函数中游标报错 No data - zero rows fetched, selected
- 小米9/9 SE于3月19日开放购买!雷军:螺丝刀已备好,百万出货
- pdf压缩 网上常见方法比较
- KSO - sqlserver事务实现
- 作业 20180925-6 四则运算试题生成
- 【记录】使用在线KMS激活Office系列