ArrayList类
/*
* Collection是集合的顶层接口,它的子体系有重复的,有唯一的,有有序的,有无序的
*
* Collection的功能概述
* 1添加功能
* boolean add(Object obj);添加一个元素
* boolean addAll(Collection c);添加一个集合的元素
*
* 2删除元素
* void clear();移除所有元素
* boolean remove(Object o);移除一个元素
* boolean removeAll(Collection c);移除一个集合的元素(是一个还是所有?是所有)
*
* 3判断功能
* boolean contains(Object o);判断集合中是否包含指定的元素
* boolean containsAll(Collection c);判断集合中是否包含指定的集合元素(是一个还是所有,是一个)
* boolean isEmpty();判断集合是否为空
*
* 4获取功能
* Iterator<E> iterator()
*
* 5长度功能
* int size();元素的个数
*
* 6交集功能
* boolean retainAll(Collection c);
*
* 7把集合转换为数组
* Object[] toArray();
* */
泛型<>
去掉warning
import java.util.ArrayList;
import java.util.Iterator; public class IntegerDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub ArrayList<String> array = new ArrayList<String>(); array.add("hello");
array.add("world");
array.add("java"); for (int i = 0; i < array.size(); i++) {
String s = array.get(i);
System.out.println(s);
} System.out.println("------"); for (Iterator<String> it = array.iterator(); it.hasNext();) {
String s = it.next();
System.out.println(s);
}
}
}
/*
* ArrayList存储字符串并遍历,要求加入泛型,并用增强for遍历
*
* A:迭代器
* B:普通for
* C:增强for
* */
import java.util.ArrayList;
import java.util.Iterator; /*
* ArrayList存储字符串并遍历,要求加入泛型,并用增强for遍历
*
* A:迭代器
* B:普通for
* C:增强for
* */ public class IntegerDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub ArrayList<String> array = new ArrayList<String>(); array.add("hello");
array.add("world");
array.add("java"); for (Iterator<String> it = array.iterator(); it.hasNext();) {
String s = it.next();
System.out.println(s);
}
System.out.println("-------"); for (int i = 0; i < array.size(); i++) {
String s = array.get(i);
System.out.println(s);
}
System.out.println("-------"); for (String x : array) {
System.out.println(x);
}
}
}
/*
* 获取10个1-20之间的随机数,要求不能重复
*
* 用集合实现
*
* 分析:
* A:创建产生随机数的对象
*
* B:创建一个存储随机数的集合
*
* C:定义一个统计变量,从0开始
*
* D:判断统计变量是否小于10
* 是:先产生一个随机数,判断该随机数是否在集合存在
* 如果不存在,添加该随机数,统计变量+1
* 否:跳过
*
* E:遍历集合
* */
import java.util.ArrayList;
import java.util.Random; /*
* 获取10个1-20之间的随机数,要求不能重复
*
* 用集合实现
*
* 分析:
* A:创建产生随机数的对象
*
* B:创建一个存储随机数的集合
*
* C:定义一个统计变量,从0开始
*
* D:判断统计变量是否小于10
* 是:先产生一个随机数,判断该随机数是否在集合存在
* 如果不存在,添加该随机数,统计变量+1
* 否:跳过
*
* E:遍历集合
* */ public class IntegerDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub // A:创建产生随机数的对象
Random r = new Random(); // B:创建一个存储随机数的集合
ArrayList<Integer> array = new ArrayList<Integer>(); // C:定义一个统计变量,从0开始
int count = 0; while (count < 10) {
int number = r.nextInt(20) + 1; if (!array.contains(number)) {
array.add(number);
count++;
}
} System.out.println(array);
}
}
/*
* 键盘录入多个数据,以0结束,要求在控制台输出这多个数据中的最大值
*
* 分析:
* A:创建键盘录入数据对象
* B:键盘录入多个数据,用集合存储
* C:循环录入数据,以0结束
* D:把集合转换成数组
* E:对数组排序
* F:获取该数组的最大索引值
* */
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Scanner; /*
* 键盘录入多个数据,以0结束,要求在控制台输出这多个数据中的最大值
*
* 分析:
* A:创建键盘录入数据对象
* B:键盘录入多个数据,用集合存储
* C:循环录入数据,以0结束
* D:把集合转换成数组
* E:对数组排序
* F:获取该数组的最大索引值
* */ public class IntegerDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub // A:创建键盘录入数据对象
Scanner sc = new Scanner(System.in); // B:键盘录入多个数据,用集合存储
ArrayList<Integer> array = new ArrayList<Integer>(); // C:循环录入数据,以0结束
while (true) {
System.out.println("请输入数据:");
int number = sc.nextInt(); if (number != 0) {
array.add(number);
} else {
break;
}
} // D:把集合转换成数组
Integer i[] = new Integer[array.size()];
array.toArray(i); // E:对数组排序
Arrays.sort(i); // F:获取该数组的最大索引值
System.out.println("最大值是:" + i[i.length - 1]);
}
}
ArrayList类的更多相关文章
- 集合 ArrayList 类
集合的基本信息: System.Collections 系统类中的收藏类,定义各种对象(如列表,队列,位数组,哈希表和字典)的集合 常用的集合为ArrayList类:特殊集合一般会用到Queue队 ...
- Java API —— ArrayList类 & Vector类 & LinkList类
1.ArrayList类 1)ArrayList类概述 · 底层数据结构是数组,查询快,增删慢 · 线程不安全,效率高 2)ArrayList案例 ...
- C#常用的集合类型(ArrayList类、Stack类、Queue类、Hashtable类、SortedList类)
1.ArrayList类 ArrayList类主要用于对一个数组中的元素进行各种处理.在ArrayList中主要使用Add.Remove.RemoveAt.Insert四个方法对栈进行操作.Add方法 ...
- Java中ArrayList类详解
1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: 动态的增加和减少元素 实现了ICollection和ILis ...
- ArrayList 类和List<T>泛型类
ArrayList集合类在System.Colletions命名空间下,它其实是一个特殊的数组,它可以动态的添加和删除元素,根据元素的改变自动决定它自身的大小,也可以灵活的插入元素等操作,使用起来要比 ...
- 表的顺序结构---重写Arraylist类
重写ArrayList类,为防止冲突,重写为MyArrayList,未继承Iterable类. public class MyArrayList<AnyType>{ int N=10; A ...
- JDK1.8源码(五)——java.util.ArrayList 类
关于 JDK 的集合类的整体介绍可以看这张图,本篇博客我们不系统的介绍整个集合的构造,重点是介绍 ArrayList 类是如何实现的. 1.ArrayList 定义 ArrayList 是一个用数组实 ...
- LinkedList类 和ArrayList类
1)LinkedList类 LinkedList实现了List接口,允许null元素.此外LinkedList提供额外的get,remove,insert方法在 LinkedList的首部或尾部.这 ...
- 实现一个自定义的ArrayList类,实现将原List中的每个数据都乘以10
1.首先自定义一个Operate接口,如下所示: public interface Operate { public Integer caozuo(Integer i); } 2.实现自定义的Arra ...
- java基础之集合框架--使用ArrayList类动态 存储数据
一.ArrayList是List接口下的一个实现类,实现了长度可变的.连续的数组:拥有数组的特性. 遵循了LIst的规则:不唯一的.有序的. 如果没有增加泛型的话,集合中可以添加任何类型的数据. 使用 ...
随机推荐
- 【python问题系列--2】脚本运行出现语法错误:IndentationError: unindent does not match any outer indentation level
缩进错误,此错误,最常见的原因是行之间没有对齐. 参考:http://www.crifan.com/python_syntax_error_indentationerror/comment-page- ...
- ural 1146. Maximum Sum(动态规划)
1146. Maximum Sum Time limit: 1.0 second Memory limit: 64 MB Given a 2-dimensional array of positive ...
- 错误提示 Unsupported compiler 'com.apple.compilers.llvmgcc42' selected for architecture 'i386'
转自http://blog.csdn.net/cyuyanenen/article/details/51444974 警告提示:Invalid C/C++ compiler in target Cor ...
- json处理三部曲之第三曲:利用Gson处理json
需要导入gson-xxx.jar包 <dependency> <groupId>com.google.code.gson</groupId> <artifac ...
- JAVA序列化与反序列化三种格式存取(默认格式、XML格式、JSON格式)
什么是序列化 java中的序列化(serialization)机制能够将一个实例对象的状态信息写入到一个字节流中,使其可以通过socket进行传输.或者持久化存储到数据库或文件系统中:然后在需要的时候 ...
- 其他应用和技巧-用try和catch来让程序更友好
---------------------------- <script type="text/javascript"> //进行 ...
- 《JS权威指南学习总结--3.4null和undefined》
内容要点 一.相似性 var a= undefined; var b= null; if(a==b){ alert("相等"); ...
- python 输出重定向
使print既打印到终端,又写入文件 class Tee(object): def __init__(self,*files): self.files = files def write(self,o ...
- HDU 1548 A strange lift(dij+邻接矩阵)
( ̄▽ ̄)" //dijkstra算法, //只是有效边(即能从i楼到j楼)的边权都为1(代表次数1): //关于能否到达目标楼层b,只需判断最终lowtime[b]是否等于INF即可. # ...
- docker Swarm 集群发现
Node 发现 $swarm manage --discovery dockerhost01:,dockerhost02:,dockerhost03: -H= 文件发现 $swarm manage - ...