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

  1. 集合 ArrayList 类

    集合的基本信息: System.Collections   系统类中的收藏类,定义各种对象(如列表,队列,位数组,哈希表和字典)的集合 常用的集合为ArrayList类:特殊集合一般会用到Queue队 ...

  2. Java API —— ArrayList类 & Vector类 & LinkList类

    1.ArrayList类     1)ArrayList类概述         · 底层数据结构是数组,查询快,增删慢         · 线程不安全,效率高     2)ArrayList案例   ...

  3. C#常用的集合类型(ArrayList类、Stack类、Queue类、Hashtable类、SortedList类)

    1.ArrayList类 ArrayList类主要用于对一个数组中的元素进行各种处理.在ArrayList中主要使用Add.Remove.RemoveAt.Insert四个方法对栈进行操作.Add方法 ...

  4. Java中ArrayList类详解

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

  5. ArrayList 类和List<T>泛型类

    ArrayList集合类在System.Colletions命名空间下,它其实是一个特殊的数组,它可以动态的添加和删除元素,根据元素的改变自动决定它自身的大小,也可以灵活的插入元素等操作,使用起来要比 ...

  6. 表的顺序结构---重写Arraylist类

    重写ArrayList类,为防止冲突,重写为MyArrayList,未继承Iterable类. public class MyArrayList<AnyType>{ int N=10; A ...

  7. JDK1.8源码(五)——java.util.ArrayList 类

    关于 JDK 的集合类的整体介绍可以看这张图,本篇博客我们不系统的介绍整个集合的构造,重点是介绍 ArrayList 类是如何实现的. 1.ArrayList 定义 ArrayList 是一个用数组实 ...

  8. LinkedList类 和ArrayList类

    1)LinkedList类  LinkedList实现了List接口,允许null元素.此外LinkedList提供额外的get,remove,insert方法在 LinkedList的首部或尾部.这 ...

  9. 实现一个自定义的ArrayList类,实现将原List中的每个数据都乘以10

    1.首先自定义一个Operate接口,如下所示: public interface Operate { public Integer caozuo(Integer i); } 2.实现自定义的Arra ...

  10. java基础之集合框架--使用ArrayList类动态 存储数据

    一.ArrayList是List接口下的一个实现类,实现了长度可变的.连续的数组:拥有数组的特性. 遵循了LIst的规则:不唯一的.有序的. 如果没有增加泛型的话,集合中可以添加任何类型的数据. 使用 ...

随机推荐

  1. kvstore之mongodb为存储介质

    配置config(连接mongo) mongo define('KVSTORE_STORAGE', 'base_kvstore_mongodb'); define('MONGODB_SERVER_CO ...

  2. js整频滚动展示效果(函数节流鼠标滚轮事件)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. AIR文件操作:使用文件对象操作文件和目录 .

    来源:http://blog.csdn.net/zdingxin/article/details/6635376 在AIR中可以方便的对本地文件操作,不过上次做了个项目,发现还是有不少不方便的地方,比 ...

  4. mybatis遇见的奇葩问题(返回null)

    1.问题描述 select 语句没有问题,执行完毕后通过日志也可以看出 select到数据了,但是拿到的值就是null 2.原因 原来是有人将对象变量命名给改了,导致select到结果后不能映射成为对 ...

  5. 在鼠标右键添加“使用WPS打开”

    假设WPS安装在 “D:\Program Files\Kingsoft\WPS Office” 目录下,导入以下注册表内容: Windows Registry Editor Version 5.00 ...

  6. 2013最新Android常用的工具类整理

    主要介绍总结的Android开发中常用的工具类,大部分同样适用于Java. 目前包括HttpUtils.DownloadManagerPro.ShellUtils.PackageUtils. Pref ...

  7. android通过代码判断手机是否root

    只要/system/bin/su./system/xbin/su这两个文件中有一个存在,就表明已经具有ROOT权限,如果两个都不存在,则不具有ROOT权限. // 判断是否具有ROOT权限 publi ...

  8. 简单的setInterval应用

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. 解决VS2010中winsock.h与winsock2.h冲突(重复定义)——转载

    解决VS2010中winsock.h与winsock2.h冲突(重复定义)——转载 当这两个头文件顺序颠倒时,编译会出现许多莫名其妙的错误,错误如下: 1>…\include\ws2def.h( ...

  10. WinDbg抓取程序报错dump文件的方法

    程序崩溃的两种主要现象: a. 程序在运行中的时候,突然弹出错误窗口,然后点错误窗口的确定时,程序直接关闭 例如: “应用程序错误” “C++错误之类的窗口” “程序无响应” “假死”等 此种崩溃特点 ...