ArryList集合的使用

ArryList集合与数组之间的区别

字符串一旦被创建其长度就无法更改,而ArryList则可以改变其自身的长度。

ArryList 包含的方法

1.添加元素 public boolen add(E e){}

eg

import java.util.ArryList
public class Demo01{//使用ArryList时需要导包并且创建对象<>中代表着类型只能时引用类型,不能基本类型public static void main (String [] args){ArryList<String> list = new ArryList<>();list.add("张三");//其返回值代表着元素是否添加成功boolean success = list.add("李四");}
}

2.得到元素 public E get(int index){} E是返回值类型

eg

import java.util.ArryList
public class Demo01{public static void main(String [] args){ArryList<String> list = new ArryList<>();list.add("张三");list.add("李四");list.add("王五");list.add("赵六");//得到该索引处的值String name = list.get(3);}}

3.删除元素 public E remove(int index){}

eg

import java.util.ArryList
public class Demo01{public static void main(String [] args){ArryList<String> list = new ArryList<>();list.add("张三");list.add("李四");list.add("王五");list.add("赵六");//删除索引是3处的值返回值是删除的名字int name = list.remove(3);System.out.println("删除的名字是"+name);}}

4.查看ArryList集合的1长度 public int size(){}

eg

import java.util.ArryList
public class Demo01{public static void main(String [] args){ArryList<String> list = new ArryList<>();list.add("张三");list.add("李四");list.add("王五");list.add("赵六");int size = list.size();System.out.pritln("该集合的长度是:"+size);}
}

对该集合遍历输出

eg

import java.util.ArryList
public class Demo01{public static void main(String [] args){ArryList<String> list = new ArryList<>();list.add("张三");list.add("李四");list.add("王五");list.add("赵六");for(int i=0;i<list.size();i++){System.out.print(list.get(i)+" ");}}
}

如何向集合中添加基本类型

如果希望向集合中添加基本类型,则必须用包装类

byte Byte

short Short

int Integer (特殊)

float Float

double Double

char Character (特殊)

boolean Boolean

eg

package com.work8;
import java.util.ArrayList;
public class Demo02 {public static void main(String[] args) {ArrayList<Integer>  list = new ArrayList<>();list.add(100);list.add(200);list.add(300);System.out.println(list);}
}

练习

1.题目 :生成6个1-33的随机整数,添加到集合,并且遍历

package com.work8;
import java.util.ArrayList;
import java.util.Random;
//生成6个1-33的随机整数,添加到集合,并且遍历
public class Demo03 {public static void main(String[] args) {ArrayList<Integer> list = new ArrayList<>();Random r = new Random();for (int i = 0; i < 6; i++) {int num = r.nextInt(33)+1;list.add(num);}for (int i = 0; i < list.size(); i++) {System.out.print(list.get(i)+" ");}System.out.println();}
}

2.题目 :定义4个学生类 ,添加到集合并且遍历

package com.work8;
import java.util.ArrayList
//定义4个学生类 ,添加到集合并且遍历
public class Demo04 {public static void main(String[] args) {ArrayList<Student> list = new ArrayList<>();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++) {System.out.println(list.get(i).getName()+"的年龄是:"+ list.get(i).getAge());}}
}

3.题目:定义以指定方式打印集合的一个方法(ArryList作为参数)格式{10@20@30}

package com.work8;
import java.util.ArrayList;
public class Demo05 {public static void main(String[] args) {ArrayList<Integer> list = new ArrayList<>();list.add(10);list.add(20);list.add(30);list.add(40);printArryList(list);}public  static  void printArryList(ArrayList<Integer> list){System.out.print("{");for (int i = 0; i < list.size(); i++) {if(i==list.size()-1){System.out.print(list.get(i)+"}");}elseSystem.out.print(list.get(i)+"@");}}
}

4.题目:用一个大集合存储20个1-100的随机数,在定义一个方法返回一个小集合来筛选其中的偶数并且存储

package com.work8;
import java.util.ArrayList;
import java.util.Random;
//用一个大集合存储20个1-100的随机数,在定义一个方法返回一个小集合来筛选其中的偶数并且存储
public class Demo06 {public static void main(String[] args) {ArrayList<Integer> listA = new ArrayList<>();ArrayList<Integer> listB = new ArrayList<>();Random r= new Random();for (int i = 0; i <20 ; i++) {int num = r.nextInt(100)+1;listA.add(num);}listB = filterEven(listA);for (int i = 0; i < listB.size(); i++) {System.out.print(listB.get(i)+" ");}public  static ArrayList<Integer> filterEven(ArrayList<Integer> listA){ArrayList<Integer> listB = new ArrayList<>();for (int i = 0; i < listA.size(); i++) {if(listA.get(i)%2==0){listB.add(listA.get(i));}}return  listB;}
}

ArryList 集合相关推荐

  1. 1.17 项目实例:模仿斗地主洗牌发牌小游戏

    实现思路步骤如下: 准备牌:Arrylist 集合储存,for 循环遍历实现 洗牌:使用 Collections 的shuffle(arryBox);方法刷新集合中的顺序 发牌:使用 for 循环遍历 ...

  2. arraylist 线程安全_数据结构之Array、ArrayList、List、LinkedList对比分析

    作者:小许子 https://www.cnblogs.com/xiaoXuZhi/p/XYH_dataStructureTest_array.html 一.前言: 在c#数据结构中,集合的应用非常广泛 ...

  3. Java实现一个简单双色球摇奖功能

    要求:摇出1-33之间的7个随机数,且数字不能重复 双色球用ArryList集合来存储 随机摇出双色球使用Random类nextInt()方法 @Testpublic void filedome17( ...

  4. 2020java面试必问,找不到工作你找我(一)

    Java 面试宝典 第一章 内容介绍 20 第二章 JavaSE 基础 21 一. Java 面向对象 21 1.面向对象都有哪些特性以及你对这些特性的理解 21 2.访问权限修饰符 public.p ...

  5. 11 Java基础整合---从配置环境变量到完成学生管理系统

    文章目录 1 java基础知识梳理 2 开发环境搭建 2.1 安装JDK 2.2 配置环境变量 3 java基础语法 案例1 --- HelloWord案例 3.1 标识符和关键字 3.2 常量和变量 ...

  6. Java面试题系列【1】JAVA初级经典五十问

    有道无术,术尚可求,有术无道,止于术. 资料整理来自网络 文章目录 1. JDK.JRE.JVM 有什么区别 2. == 和 equals 有什么区别 3. String类可以被继承吗? 4. Str ...

  7. 扑克牌洗牌发牌java代码_java实战(一)之Java模仿斗地主洗牌发牌小游戏

    斗地主是全国范围内的一种桌面游戏,尽管全国各种类型,但大同小异.本节我们先来实现一下斗地主中的简单洗牌.发牌和看牌功能. 按照斗地主的规则,完成洗牌发牌的动作.具体规则为使用 54 张牌打乱顺序,3 ...

  8. Java多线程:线程安全和非线程安全的集合对象

    转载自  Java多线程:线程安全和非线程安全的集合对象 一.概念: 线程安全:就是当多线程访问时,采用了加锁的机制:即当一个线程访问该类的某个数据时,会对这个数据进行保护,其他线程不能对其访问,直到 ...

  9. java 三大集合_java中的三大集合入门笔记(简单实用)

    为什么使用集合框架 如图: 集合的好处: 集合弥补了数组的缺陷,它比数组更灵活更实用,可大大提高软件的开发效率,而且不同的集合适用于不同的场合. Java集合主要分为以下3种类型 Java集合框架提供 ...

最新文章

  1. python3 dict 字典 合并
  2. X86汇编——简易通讯录
  3. 解决fatal: 不是一个 git 仓库(或者任何父目录)的方法
  4. 事务与分布式事务原理与实现
  5. windbg 符号表
  6. 使用Java Spring消费MySQL中的数据库存储过程
  7. axios的数据请求方式及跨域
  8. win8的开始菜单不见了怎么办
  9. 如何将pdf导出html,如何导出PDF版、导出EXE版、导出HTML离线版?
  10. vue 检测ie版本_Vue2+Webpack+ES6 兼容低版本浏览器(IE9)解决方案
  11. 一个如何解析XML文件? [关闭]
  12. pytorch 生成随机数Tensor的方法 torch.rand torch.randn torch.normal torch.linespace
  13. 数字员工到岗,普通员工惊慌?先别急,往下看
  14. sed修炼系列(二):sed武功心法(info sed翻译+注解)
  15. 利用Python连接MySQL将表单转化为DataFrame
  16. jad反编译成java,Jad java反编译指令
  17. 想让“贾维斯”成为现实?物联网帮你拥有
  18. 说课稿模板计算机,计算机说课稿
  19. 用计算机就行DNA翻译的程序,南邮通达科技英语原文翻译Lession 2 CTEXT
  20. Scrapy爬取天眼查首页热门公司信息,可视化分析这些热门公司

热门文章

  1. 【动图】高数常见特殊曲线
  2. 阿里云盘又搞事,最新福利码来了!限时!
  3. 阿里云,百度云等云服务器不支持本机25端口解封,使用465加密端口发送邮件
  4. Linux:Ubuntu系统的安装
  5. SAP中采购协议中未清交货需要处理吗?
  6. small_arts:球球大作战刷(秒点/代点)棒棒糖网站地址
  7. mesh 协调器 路由器_关于zigbee协调器(单播方式)传输数据给网络中的多个路由器丢失数据包的问题?...
  8. 区块链推文@2019.2.15
  9. 基于Java实现K-means算法
  10. html投注游戏源码,html游戏源码 人机斗地主