arraylist

Fill ArrayList with colors for Android

泄露秘密 提交于 2020-02-25 01:30:11
问题 I want to create 2 ArrayList. One holding 16 colors, the other one holding 139. I have the list with colors (both RGB as 255,126,32 and Hex as 0xFFFF2552). I want to use the ArrayList to later pick random colors from. I've tried int[], that doesn't work. I've tried ArrayList<Integer> and ArrayList<Color> . My problem is; I don't understand how to add the colors to the ArrayLists. Thanks!! For now, I'm exploring this: Color cBlue = new Color(0,0,255); Color cRed = new Color(255,0,0); ArrayList

Fill ArrayList with colors for Android

狂风中的少年 提交于 2020-02-25 01:29:08
问题 I want to create 2 ArrayList. One holding 16 colors, the other one holding 139. I have the list with colors (both RGB as 255,126,32 and Hex as 0xFFFF2552). I want to use the ArrayList to later pick random colors from. I've tried int[], that doesn't work. I've tried ArrayList<Integer> and ArrayList<Color> . My problem is; I don't understand how to add the colors to the ArrayLists. Thanks!! For now, I'm exploring this: Color cBlue = new Color(0,0,255); Color cRed = new Color(255,0,0); ArrayList

常用类的课后作业

…衆ロ難τιáo~ 提交于 2020-02-24 23:04:14
1、随机输出班上5名学生的学号。package JAVAclas; import java.util.*; public class Jav { public static void main(String[] args) { Random a=new Random(); int num=0; for(int i=0;i<5;i++) { num=a.nextInt(56); System.out.println("输出随机学号:"+num); } } }2、获取当前系统时间,运用subString()方法,显示年份。 package JAVAclas; import java.util.*; import java.text.*; public class Jav2 { public static void main(String[] args) { Date dt=new Date(); SimpleDateFormat t=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss E"); System.out.println("当前系统时间:"+t.format(dt)); } }3、使用Calendar类显示当前日期。 package JAVAclas; import java.util.*; public class Javs3 {

源码分析|ArrayList

痴心易碎 提交于 2020-02-24 16:51:54
本文由 Oo鲁毅oO 首发于 掘金,下方为原文链接 源码分析|ArrayList 1.什么是ArrayLsit ArrayList是JDK中的一个基于数组实现的线性的可变长度的集合类,并且实现了List接口。 2.ArrayList构造方法分析 不指定容量时 //创建ArrayList ArrayList list = new ArrayList(); 创建完成后,点击进入ArrayList源码,可以发现是 public ArrayList() { this.elementData = DEFAULTCAPACITY_EMPTY_ELEMENTDATA; } 这样的一个无参构造方法对 ArrayList 进行了初始化操作,其中 elementData 是一个 Object 类型的数组, DEFAULTCAPACITY_EMPTY_ELEMENTDATA 也是一个 Object 类型的数组且长度为0。 指定容量时 //创建ArrayList ArrayList list = new ArrayList(20); 再次点击就会发现会调用一个制定了初始化容量的构造方法 public ArrayList(int initialCapacity) { if (initialCapacity > 0) { this.elementData = new Object

Java ArrayList add(int index, E element)和set(int index, E element)两个方法

℡╲_俬逩灬. 提交于 2020-02-24 10:26:00
一般使用List集合,估计都是使用这个ArrayList,一般呢也就是简单遍历数据和存储数据。 很少使用到add(int index, E element)和set(int index, E element)两个方法。这两个方法,乍一看,就是在指定的位置插入一条数据。 区别: set()是更新,更新指定下标位置的值。 add()是添加,区别于一般的add(E e),这个就是有个位置的概念,特殊位置之后的数据,依次往后移动就是了。 看下面代码: public class ArrayListTest { public static void main(String[] args) { List<String> list = new ArrayList<>(2); System.out.println("list大小为:" + list.size()); list.add("12"); System.out.println("list大小为:" + list.size()); list.set(1,"sss"); list.add(1,"放在下标为1的位置"); list.add("22"); System.out.println("list大小为:" + list.size()); System.out.println(list.toString()); list.add(1,

Java源码解读系列(一):ArrayList

僤鯓⒐⒋嵵緔 提交于 2020-02-24 07:47:02
本文简单介绍了 ArrayList ,并对扩容,添加,删除操作的源代码做分析。能力有限,欢迎指正。 ArrayList是什么? ArrayList 就是数组列表,主要用来装载数据。底层实现是数组 Object[] elementData ,当我们装载的是基本数据类型 int, long, boolean, shot...的时候我们只能存储他们对应的包装类型。 与它类似的是 LinkedList ,和 LinkedList 相比,它的查找和访问元素的速度较快,但新增,删除的速度较慢。 线程安全吗? 线程不安全。 正常使用场景中, ArrayList 都是用来查询,不会涉及太频繁的增删,如果涉及频繁的增删,可以使用 LinkedList 。如果需要线程安全就使用 Vector 。 Vector 是 ArrayList 的线程安全版本,实现方式就是在所有方法加上 synchronized ,性能较差。 如何扩容? 因为数组的大小是固定,当容量超出了现有数组的大小,就需要进行扩容。 private void grow(int minCapacity) { // overflow-conscious code int oldCapacity = elementData.length; // 每次扩大原有容量的一半 int newCapacity = oldCapacity +

泛型

北城余情 提交于 2020-02-24 04:10:23
一.概念 1.“宽泛的数据类型”,就是将类型由原来的具体的类型泛化。 泛型建立对象时不指定类中属性的具体类型,而是在声明及实例化对象时由外部指定。泛型可以提高数据安全性。 2.作用:提高安全性;避免强转。 二.泛型的简单使用 1.泛型类:可以看做是普通类的工厂 使用要点: ①类型参数(比如这里的T)可以随便写为任意标识,常见的有T,K,E,V等; ②在实例化泛型类时,必须指定T的具体类型,指定的类型参数只能是类类型,不能是基本类型 ③构造函数中可以省略类型参数,省略的类型参数可以从指定的具体类型参数中推断得出 /** * @Author DreamYee * @Create 2020/02/23 15:10 */ public class 泛型 class < T > { private T apple ; private T pear ; public 泛型 class ( ) { apple = null ; pear = null ; } public 泛型 class ( T apple , T pear ) { this . apple = apple ; this . pear = pear ; } public T getApple ( ) { return apple ; } public void setApple ( T apple ) { this .

java面向对象入门(1)-入门介绍

瘦欲@ 提交于 2020-02-24 00:00:55
在本 Java OOPs 概念教程中,我们将学习四种主要的面向对象原则 -- 抽象、封装、继承和多态性。它们也被称为面向对象编程范式的四大支柱。 _ 抽象 _是在不考虑无关细节的情况下公开实体基本细节的过程,以降低用户的复杂性。 _ 封装 _是将数据和对数据的操作捆绑到一个实体中的过程。 _ 继承 _用于从现有类型派生新类型,从而建立父子关系。 _ 多态 _使一个实体在不同的上下文中具有不同的含义。 1.抽象 将 OOP中的抽象 与实时示例相关联时,它很容易理解。例如,当您开车时,您不必担心汽车的内部实际工作情况。您所关心的是通过方向盘,制动踏板,油门踏板等接口与汽车交互。在这里,您对汽车的了解是抽象的。 在计算机科学中,抽象是一个过程,通过该过程定义数据和程序的形式类似于其含义( 语义 ),同时隐藏实现细节。 用更简单的术语来说,抽象是 隐藏与上下文无关 或仅显示相关信息的信息,并通过将其与现实世界中的相似内容进行比较来简化信息。 通常,可以通过两种方式查看抽象: 1.1数据抽象 数据抽象是从多个较小的数据类型中创建复杂的数据类型的方法,该类型更接近于现实生活中的实体。例如, Employee 类可以是具有各种小型关联的复杂对象。 public class Employee { private Department department; private Address

范型概述和基本使用

无人久伴 提交于 2020-02-23 17:57:42
泛型:是一种把类型明确的工作推迟到创建对象或者调用方法的时候采取明确的特殊类型。参数化类型,把类型当作参数一样的传递。 格式: <数据类型> 此处的数据类型只能是引用类型 好处: A:把运行期间的问题提前到了编译期间 B:避免了强制类型转换 C:优化了程序设计,解决了黄色警告线 泛型在哪里使用呢? 看API,如果类,,接口,抽象类后面跟的有 < E >,就说要使用泛型。一般来说就是在集合中使用 ArrayList < String > array = new ArrayList < String > ( ) ; //用了泛型,明确定义了ArrayList里面的数据为String类型 array.add ( "hello" ) ; array.add ( "world" ) ; array.add ( "java" ) ; //array.add ( 10 ) ; //JDK5之后自动装箱 //等价于:array.add ( Integer.valueOf ( 10 )) ; //遍历 Iterator < String > it = array.iterator ( ) ; //迭代器是依赖于集合的,集合是什么类型,他也要加什么类型 while ( it.hasNext ( )) { // String s = ( String ) it.next ( ) ; /

java中list、set和map 的区别

流过昼夜 提交于 2020-02-23 05:59:42
List按对象进入的顺序保存对象,不做排序或编辑操作。Set对每个对象只接受一次,并使用自己内部的排序方法(通常,你只关心某个元素是否属于Set,而不关心它的顺序--否则应该使用List)。Map同样对每个元素保存一份,但这是基于"键"的,Map也有内置的排序,因而不关心元素添加的顺序。如果添加元素的顺序对你很重要,应该使用 LinkedHashSet或者LinkedHashMap. List的功能方法 实际上有两种List: 一种是基本的ArrayList,其优点在于随机访问元素,另一种是更强大的LinkedList,它并不是为快速随机访问设计的,而是具有一套更通用的方法。 List : 次序是List最重要的特点:它保证维护元素特定的顺序。List为Collection添加了许多方法,使得能够向List中间插入与移除元素(这只推荐LinkedList使用。)一个List可以生成ListIterator,使用它可以从两个方向遍历List,也可以从List中间插入和移除元素。 ArrayList : 由数组实现的List。允许对元素进行快速随机访问,但是向List中间插入与移除元素的速度很慢。ListIterator只应该用来由后向前遍历ArrayList,而不是用来插入和移除元素。因为那比LinkedList开销要大很多。 LinkedList : 对顺序访问进行了优化