Java中ArrayList类
ArratList 类:存放同一数据类型容器(只能为引用数据类型,因实际其内部存放的是地址)
1.导入其所在包 import java.util.ArratList
2.创建对象 ArrayList<E> 对象名=new ArrayList<>();
E:泛型数据类型,指定对象名中存放指定类型的数据,不可省略,需为引用数据类型
3.使用 即对象名.方法(参数可能有可能无)
注意:当打印对象名时,非地址,而是一个如同python中列表一般,存放的是各个数据[元素1,元素2],若无数据,即空列表[]
4。ArrayList的常用方法
对象名.add(元素) //向容器中添加指定数据类型的元素 返回值为boolean类型,可不用接受返回值,因为都会成功添加元素(尾部添加)
对象名.get(i) //获得容器中下标为i的元素,返回值是容器中存储的数据类型
对象名.size() //获得容器中元素的个数
对象名.remove(i) //移除下标为i的元素,返回值是删除的数据元素
5.倘若想要用ArrayList存储整形,浮点形,char类型,而<E>只能为引用数据类型,如何?Java为我们将基本数据类型包装成了类,间接变成引用
int------>Integer ArrayList<Integer> li=new Arraylist<>();//即存放整数元素
char---->Character ArrayList<Character> li=new Arraylist<>();//即存放char元素
float--->Float, byte--->Byte, double--->Double, long--->Long //只有int和char包装类名字特殊,其余大写即可
三个Demo熟悉其使用
//随机生成数加入到容器中(Random与ArrayList)
import java.util.ArrayList;
import java.util.Random;
/*随机生成范围为[1,33]的数字加入到动态数组中*/
public class DemoArrayList {
public static void main(String[] args) {
Random r=new Random();
ArrayList<Integer> list=new ArrayList<>();
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));
}
}
}
//定义方法输出容器以指定格式输出{元素@元素@元素。。。元素}
import java.util.ArrayList; //定义方法输出ArrayList以{元素@元素}格式输出
public class DemoSecond {
public static void main(String[] args) {
ArrayList<String> li=new ArrayList<>();
mymethod(li);
}
public static void mymethod(ArrayList<String> s){
s.add("hello");
s.add("da");
s.add("nhao");
System.out.print("{");
for(int i=0;i<s.size();i++){
if(i==s.size()-1){
System.out.print(s.get(i)+"}");
}
else
System.out.print(s.get(i)+"@");
}
}
}
//将大集合中的20个随机数,其中是偶数的放入到小集合中
import java.util.ArrayList;
import java.util.Random;
//定义方法将大集合中20个随机数,其中是偶数的放入小集合中
public class DemoTest {
public static void main(String[] args) {
ArrayList<Integer> biglist=new ArrayList<>();
ArrayList<Integer> smalist=new ArrayList<>();
mythod(biglist,smalist);
}
public static void mythod(ArrayList<Integer> a,ArrayList<Integer> b){
Random r=new Random();
for (int i = 0; i < 20; i++) {
int digit=r.nextInt(50);
a.add(digit);
if(a.get(i)%2==0){
b.add(digit);
}
}
System.out.println(a);
System.out.println(b);
}
}
Java中ArrayList类的更多相关文章
- Java中ArrayList类详解
1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: 动态的增加和减少元素 实现了ICollection和ILis ...
- Java中 ArrayList类常用方法和遍历
ArrayList类对于元素的操作,基本体现在——增.删.查.常用的方法有: public boolean add(E e) :将指定的元素添加到此集合的尾部. public E remove(in ...
- Java中 ArrayList类的使用
java.util.ArrayList 是大小可变的数组的实现,存储在内的数据称为元素.此类提供一些方法来操作内部存储 的元素. ArrayList 中可不断添加元素,其大小也自动增长. ArrayL ...
- [转] Java中ArrayList类的用法
1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: 动态的增加和减少元素 实现了ICollection和ILis ...
- Java中ArrayList类的用法
1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: 动态的增加和减少元素 实现了ICollection和ILis ...
- java中ArrayList 、LinkList区别
转自:http://blog.csdn.net/wuchuanpingstone/article/details/6678653 个人建议:以下这篇文章,是从例子说明的方式,解释ArrayList.L ...
- JAVA中ArrayList用法
JAVA中ArrayList用法 2011-07-20 15:02:03| 分类: 计算机专业 | 标签:java arraylist用法 |举报|字号 订阅 Java学习过程中做题时 ...
- Java中ArrayList与LinkedList的区别
Java中ArrayList与LinkedList的区别 一般大家都知道ArrayList和LinkedList的区别: 1. ArrayList的实现是基于数组,LinkedList的实现是基于双向 ...
- Java中Optional类的使用
从 Java 8 引入的一个很有趣的特性是 Optional 类.Optional 类主要解决的问题是臭名昭著的空指针异常(NullPointerException) —— 每个 Java 程序员都 ...
随机推荐
- AT2172 Shik and Travel
题目描述: luogu 题解: 二分+暴力$vector$+$dfs$. 记录下所有可能的子树内合法方案,双指针+归并合并. 代码: #include<vector> #include&l ...
- 【离线做法 树状数组】luoguP1972 [SDOI2009]HH的项链
与bzoj3585: mex的线段树做法有着异曲同工之妙 题目描述 HH 有一串由各种漂亮的贝壳组成的项链.HH 相信不同的贝壳会带来好运,所以每次散步完后,他都会随意取出一段贝壳,思考它们所表达的含 ...
- 【Java_多线程并发编程】基础篇——synchronized关键字
1. synchronized同步锁的原理 当我们调用某对象的synchronized方法或代码块时,就获取了该对象的同步锁.例如,synchronized(obj)就获取了“obj这个对象”的同步锁 ...
- rootfs注册挂载过程分析
参考:Linux Filesystem: 解析 Linux 中的 VFS 文件系统机制 主要代码, init_rootfs(); init_mount_tree(); 1.init_rootfs()解 ...
- LeetCode(39) Combination Sum
题目 Given a set of candidate numbers (C) and a target number (T), find all unique combinations in C w ...
- 【HIHOCODER 1529】 不上升序列
描述 给定一个长度为 n 的非负整数序列 a[1..n]. 你每次可以花费 1 的代价给某个 a[i] 加1或者减1. 求最少需要多少代价能将这个序列变成一个不上升序列. 输入 第一行一个正整数 n. ...
- AWK原理及命令和文件输入
一.awk简介 1.awk是3个姓氏的首字母,代表该语言的3个作者,awk的版本有很多,包括:旧版awk,新版awk(nawk),GNU awk(gawk)等. awk程序有awk命令,括在引 ...
- 面试准备——java设计模式
1 总体来说,设计模式分为三大类: 设计模式(design pattern)是对软件设计中普遍存在(反复出现)的各种问题,所提出的解决方案. 创建型模式(五种):工厂方法模式.抽象工厂模式.单例模式. ...
- 利用ps,grep,kill联合杀掉相关进程
#!/bin/sh . "./set-server-env.sh" 这里是输出ps -ef |grep java 结果的第二列的内容然后通过xargs传递给kill -9,其实第二 ...
- [luoguP3172] [CQOI2015]选数(递推+容斥原理)
传送门 不会莫比乌斯反演,不会递推. 但是我会看题解. 先将区间[L,H]变成(L-1,H],这样方便处理 然后求这个区间内gcd为k的方案数 就是求区间((L-1)/k,H/k]中gcd为1的方案数 ...