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的规则:不唯一的.有序的. 如果没有增加泛型的话,集合中可以添加任何类型的数据. 使用 ...
随机推荐
- java中的Volatile 变量
Java 语言中的 volatile 变量可以被看作是一种 “程度较轻的 synchronized”:与 synchronized 块相比,volatile 变量所需的编码较少,并且运行时开销也较少, ...
- javascript焦点图之垂直滚动
html代码布局,需要用到定位,不细说了 <!DOCTYPE html> <html lang="en"> <head> <meta ch ...
- GitHub使用指导
GitHub 用过Git的小伙伴想必都知道GitHub是个什么东东,我这里就简单介绍一下吧.Git是一个分布式的版本控制系统,而GitHub可以托管各种Git库,并提供一个Web界面,方便查看Git库 ...
- 《JavaScript高级程序设计》读书笔记 ---操作符一
一元操作符只能操作一个值的操作符叫做一元操作符.一元操作符是ECMAScript 中最简单的操作符. 1. 递增和递减操作符递增和递减操作符直接借鉴自C,而且各有两个版本:前置型和后置型.顾名思义,前 ...
- pur-ftpd在ubuntu上的安装2(数据库管理)
1.安装mysql数据库支持的pure-ftpd apt-get install pure-ftpd-mysql 2.添加分组"ftpgroup",并且添加分组虚拟用户" ...
- iosUISegmentedControl的基本设置
//创建segmentControl 分段控件 UISegmentedControl *segC = [[UISegmentedControl alloc]initWithFrame:CGRectMa ...
- 更改web project 访问项目名称
1.新建web project 2.右键该项目名称------properties 3.访问该项目的URL http://localhost:8806/ssm/.......... 相比书写整个项目名 ...
- SNMP学习之结构体snmp_secmod_def
此结构体中定义了各个回调函数,在函数init_ksm(E:\code\net-snmp-5.4.2.1\snmplib)中进行了初始化. void init_ksm(void) { struct sn ...
- Entity Framework技巧系列之二 - Tip 6 - 8
提示6. 如何及何时使用贪婪加载 什么时候你需要使用贪婪加载? 通常在你的程序中你知道对查询到的实体将要进行怎样的操作. 例如,如果你查询一个订单以便为一个客户重新打印,你知道没有组成订单的项目即产品 ...
- DDE复盘流程
开始复盘: 1 导入前面数据 重新复盘: 1.打开行情管理器 2.关闭图表 3.删除tick和1分钟图 4.关闭行情管理器 5.开启.