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)相关推荐

  1. mybatis中传集合时 报异常 invalid comparison: java.util.Arrays$ArrayList and java.lang.String

    mybatis中传集合时 报异常 invalid comparison: java.util.Arrays$ArrayList and java.lang.String 参考文章: (1)mybati ...

  2. java print快捷键_Java的ArrayList集合使用---唐代诗人斗地主!!!

    一.集合如何实现斗地主? 我们现实生活中关于斗地主,首先要有一副牌,然后把牌洗一下,在然后发牌,最后抢地主!因此斗地主需要以下的5步! 创建牌盒,定义一个集合对象,用ArrayList实现 往牌盒里装 ...

  3. java 集合自定义元素_java集合 collection-list-ArrayList 将自定义对象作为元素存到ArrayList集合中,并去除重复元素。...

    import java.util.*;/*将自定义对象作为元素存到ArrayList集合中,并去除重复元素. 比如:存人对象.同姓名同年龄,视为同一个人.为重复元素. 思路: 1,对人描述,将数据封装 ...

  4. Java的ArrayList集合_JAVA之ArrayList集合

    /** * ArrayList集合讲解 * 集合的添加.遍历.删除 */ package com.test; import java.util.*; public class test7 { /** ...

  5. (Java)ArrayList集合

    ArrayList集合概述和基本使用 ArrayList是可以动态增长和缩减的索引序列,它是基于数组实现的List类. 数组的长度不可以发生改变,但是ArrayList的长度是可以随时变化的 对于Ar ...

  6. JAVA之ArrayList集合

    /**  * ArrayList集合讲解  * 集合的添加.遍历.删除  */ package com.test; import java.util.*; public class test7 { / ...

  7. java集合的添加方法_深入理解java集合框架之---------Arraylist集合 -----添加方法

    Arraylist集合 -----添加方法 1.add(E e) 向集合中添加元素 /** * 检查数组容量是否够用 * @param minCapacity */ public void ensur ...

  8. Java基础知识学习04-自定义类、ArrayList集合

    类与对象 类是一个模子,确定对象将会拥有的特征(属性)和行为(方法). 类的特征:类是对象的类型 具有相同属性和方法的一组对象的集合 类的组成:属性和方法 定义一个类:public class  类名 ...

  9. java学习(116):arraylist集合实现类

    import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; //员工信息类 //dat ...

最新文章

  1. 40+场面试,100%通过率,我想分享的14条经验
  2. php ajax成功失败,php – 让$.ajax失败
  3. mysql in or索引失效_in 索引失效的问题
  4. 如何处理VirtualBox启动错误消息:The vboxdrv kernel module is not loaded
  5. html多出的空白页怎么删除,word多出一页空白页怎么删除,这4个方法总有一个能解决,真实挂机网赚项目...
  6. Python_列表2
  7. 又一中科院AI创业公司浮出水面,刚拿下AIC挑战赛视觉感知冠军
  8. 5.1、python remove和del的区别,python 循环删除元素
  9. 畅玩树莓派4B(一)树莓派系统安装和SSH连接
  10. Screw一键生成数据库文档工具
  11. 酒诗词之一(七言诗)
  12. 网关Gateway的介绍与使用
  13. 第三单元 :资本成本笔记
  14. 从Adobe调查问卷看原型设计工具大战
  15. Java 操作 ElasticSearch
  16. vijos- P1383盗窃-黑珍珠 (python + 代码优化)
  17. [ Python ] 数据挖掘:股票价格
  18. 人脸识别选这几家就对了!
  19. 拓展模块使用教程和心得(四):PWM脉冲宽度调制及普通有刷马达和空心杯电机(测试平台:STC8A8K,STM32F103)
  20. Win10右键管理打不开时,显示explorer.exe:Windows无法访问指定设备,路径或文件。你可能没有合适的权利访问这个项目

热门文章

  1. 数学建模之灰色关联分析
  2. 中考词汇测试软件,中考英语单词必备app
  3. Coding and Paper Letter(八十二)
  4. solr引入mysql数据库数据,出现Requests: 1, Fetched: 0, Skipped: 0, Processed: 0
  5. mysql存储函数中游标报错 No data - zero rows fetched, selected
  6. 小米9/9 SE于3月19日开放购买!雷军:螺丝刀已备好,百万出货
  7. pdf压缩 网上常见方法比较
  8. KSO - sqlserver事务实现
  9. 作业 20180925-6 四则运算试题生成
  10. 【记录】使用在线KMS激活Office系列