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类的更多相关文章

  1. Java中ArrayList类详解

    1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: 动态的增加和减少元素 实现了ICollection和ILis ...

  2. Java中 ArrayList类常用方法和遍历

     ArrayList类对于元素的操作,基本体现在——增.删.查.常用的方法有: public boolean add(E e) :将指定的元素添加到此集合的尾部. public E remove(in ...

  3. Java中 ArrayList类的使用

    java.util.ArrayList 是大小可变的数组的实现,存储在内的数据称为元素.此类提供一些方法来操作内部存储 的元素. ArrayList 中可不断添加元素,其大小也自动增长. ArrayL ...

  4. [转] Java中ArrayList类的用法

    1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: 动态的增加和减少元素 实现了ICollection和ILis ...

  5. Java中ArrayList类的用法

    1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: 动态的增加和减少元素 实现了ICollection和ILis ...

  6. java中ArrayList 、LinkList区别

    转自:http://blog.csdn.net/wuchuanpingstone/article/details/6678653 个人建议:以下这篇文章,是从例子说明的方式,解释ArrayList.L ...

  7. JAVA中ArrayList用法

    JAVA中ArrayList用法 2011-07-20 15:02:03|  分类: 计算机专业 |  标签:java  arraylist用法  |举报|字号 订阅     Java学习过程中做题时 ...

  8. Java中ArrayList与LinkedList的区别

    Java中ArrayList与LinkedList的区别 一般大家都知道ArrayList和LinkedList的区别: 1. ArrayList的实现是基于数组,LinkedList的实现是基于双向 ...

  9. Java中Optional类的使用

    从 Java 8 引入的一个很有趣的特性是 Optional  类.Optional 类主要解决的问题是臭名昭著的空指针异常(NullPointerException) —— 每个 Java 程序员都 ...

随机推荐

  1. Java InputStream、String、File相互转化

    String --> InputStreamByteArrayInputStream stream = new ByteArrayInputStream(str.getBytes()); Inp ...

  2. (10)zabbix item key详解

    1. 灵活的参数 参数位置可用接收任意参数则是灵活的.例如vfs.fs.size[*],”*”星号可以使用任意的参数,例如:vfs.fs.size[/]vfs.fs.size[/opt] 2. Key ...

  3. GIMP中的新建Layer与更改Layer大小

    这边可以直接New Layer,新建一个Layer,还可以New from Visible,第二种是将当前的状态下图像复制出来. 改变Layer的大小,一般的方法两种: Crop to Selecti ...

  4. Web框架之Django_04 模板层了解(过滤器、标签、自定义过滤器、标签、inclusion_tag、模板的继承与导入)

    摘要: 模版层(模板语法) 模板语法 过滤器 标签 自定义过滤器.标签 inclusion_tag 模板的继承 模板的导入 一.模板语法: 常用语法:{{     }}    变量相关{% %}    ...

  5. LeetCode(136) Single Number

    题目 Given an array of integers, every element appears twice except for one. Find that single one. Not ...

  6. 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 ...

  7. 杭电 5748 Bellovin

    Description Peter has a sequence  and he define a function on the sequence -- , where  is the length ...

  8. Google 超分辨率技术 RAISR

    每天都有数以百万计的图片在网络上被分享.储存,用户借此探索世界,研究感兴趣的话题,或者与朋友家人分享假期照片.问题是,大量的图片要嘛被照相设备的像素所限制,要嘛在手机.平板或网络限制下被人为压缩,降低 ...

  9. cs229_part7

    PCA 问题背景 回顾一下我们特征选择中的问题.如果特征非常多,而且有一些特征是重复的,那么我们可以想办法剔除掉一些无用的特征.那里我们提到一个计算互信息的方法.那么这里换一种降维方法. 比如说这样的 ...

  10. final,buaa_oo conclusion

    UML系列作业设计架构 第13次作业 本单元的第一次作业中,涉及到了类图的解析.在着手做这单元作业的时候,需要将每一种 UmlElement 再封装,并在解析时,用 helper 单例来进行查询处理( ...