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 程序员都 ...
随机推荐
- Java InputStream、String、File相互转化
String --> InputStreamByteArrayInputStream stream = new ByteArrayInputStream(str.getBytes()); Inp ...
- (10)zabbix item key详解
1. 灵活的参数 参数位置可用接收任意参数则是灵活的.例如vfs.fs.size[*],”*”星号可以使用任意的参数,例如:vfs.fs.size[/]vfs.fs.size[/opt] 2. Key ...
- GIMP中的新建Layer与更改Layer大小
这边可以直接New Layer,新建一个Layer,还可以New from Visible,第二种是将当前的状态下图像复制出来. 改变Layer的大小,一般的方法两种: Crop to Selecti ...
- Web框架之Django_04 模板层了解(过滤器、标签、自定义过滤器、标签、inclusion_tag、模板的继承与导入)
摘要: 模版层(模板语法) 模板语法 过滤器 标签 自定义过滤器.标签 inclusion_tag 模板的继承 模板的导入 一.模板语法: 常用语法:{{ }} 变量相关{% %} ...
- LeetCode(136) Single Number
题目 Given an array of integers, every element appears twice except for one. Find that single one. Not ...
- LeetCode(112) Path Sum
题目 Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up ...
- 杭电 5748 Bellovin
Description Peter has a sequence and he define a function on the sequence -- , where is the length ...
- Google 超分辨率技术 RAISR
每天都有数以百万计的图片在网络上被分享.储存,用户借此探索世界,研究感兴趣的话题,或者与朋友家人分享假期照片.问题是,大量的图片要嘛被照相设备的像素所限制,要嘛在手机.平板或网络限制下被人为压缩,降低 ...
- cs229_part7
PCA 问题背景 回顾一下我们特征选择中的问题.如果特征非常多,而且有一些特征是重复的,那么我们可以想办法剔除掉一些无用的特征.那里我们提到一个计算互信息的方法.那么这里换一种降维方法. 比如说这样的 ...
- final,buaa_oo conclusion
UML系列作业设计架构 第13次作业 本单元的第一次作业中,涉及到了类图的解析.在着手做这单元作业的时候,需要将每一种 UmlElement 再封装,并在解析时,用 helper 单例来进行查询处理( ...