java随手笔记之八集合泛型

Object:根类
        toString,equals,hashCode
包裹类:8个,Integer,Character
        xxx parseXxx(),自动装箱(new Xxx())和自动拆箱(intValue())
字符串类:
    String:final类,不可改变的Unicode,返回新的字符串对象
    StringBuffer,StringBuilder:final类,可改变的Unicode,返回原缓冲区的字符串对象
数学类:
    Math:静态
                   常量和方法
                   
集合:
     存储不同类型的对象,长度可变
     数组:存储相同类型的数据,长度固定
    
    Collection:存储无序和可重复元素
        ---List:元素重复,有序
            ---ArrayList
            ---LinkedList
        ---Set:不允许元素重复,无序
            ---HashSet
            ---SortedSet
              ---TreeSet
              
泛型:jdk1.5,可以认为是一种安全机制,
          表示方式:<元素类型>   一旦使用了泛型,那么相当于给集合增加了约束,
                                                    集合只能存储泛型所指定的元素类型
             泛型的类型参数不支持多态                                        
      ?:通配符,可以代表任意类型
      ? extends E : 接收的是E类型及其E的子类型 ----上限
      ? super E: 接收的是E类型及其E的父类型 ----下限
      
      HashSet:底层数据结构为:哈希算法。
                    每个要存储的对象都会先计算哈希码值(hashCode方法),如果哈希值不同则存入到集合中,
                    如果哈希值相同,会通过equals方法进行第二次校验,比较是否是相同对象
      TreeSet:底层数据结构为:二叉树,将将元素按照自然顺序排序
                           存储自定义对象时,必须实现Comparable接口,并实现该接口的compareTo方法
                根据该方法的返回值进行自然顺序排序,
                返回值为正整数,负整数,0,如果是0意味着是相同元素。
      ArrayList:底层数据结构为:数组
                                                           元素连续,查找和修改快,删除和添加慢
      LinkedList:地城数据结构为:双向链表
                                                                元素可以不连续,查找和修改慢,添加和删除快

迭代器:
       ---将集合中元素检索出来,---称之为迭代
       Iterator   iterator()
       ListIterator  listIterator()

时间: 2024-10-19 09:12:57

java随手笔记之八集合泛型的相关文章

黑马程序员——JAVA学习笔记八(集合)

1,    JAVA最初版本只为最常用的数据结构提供了很少的一组类:Vector.Stack.Hashtable.BitSet与Enumeration接口,从JAVA1.2版本开始推出了一组功能完善的的数据结构. 集合类的由来:  对象用于封装特有数据,对象多了需要存储,如果对象的个数不确定.  就使用集合容器进行存储. 集合特点: 1,用于存储对象的容器. 2,集合的长度是可变的. 3,集合中不可以存储基本数据类型值. 4,接口与实现相互分离. 集合框架是为表示和操作集合而规定的一种统一的标准

java随手笔记之九之IO和线程

IO:进行数据的读写操作. 输入流:源头---->应用程序,read 输出流:应用程序(源头)--->目的地,write 字节流: InputStream,OutputStream 字符流: Reader,Writer read: 1.创建输入流对象,与要读取文件相关联 2.读取文件内容 3.关闭流 write: 1.创建输出流对象,与要写入数据的文件相关联 2.将数据写入到文件 3.关闭流 字符包装流对象: BufferdReader:String readLine(),null Buffe

java随手笔记一

如果你希望从事编写和数据库相关的软件,可以深入学习JDBK:如果你希望从事和网络信息交换有关的程序软件,可以学习XML:如果你希望从事大型网络应用程序的开发和设计,可以学习Java EE;如果希望从事与物联网相关的嵌入式开发和设计,可以学习Java ME;如果你希望从事web程序的开发,可以学习JSP. java平台:    javase  javaee  javame       java环境搭建:        jvm:--java虚拟机,--执行程序    jre:--java运行时环境,

阿花宝宝 Java基础笔记 之 集合框架

基本接口:Collection  接口: List  实现类:ArrayList LinkedList  接口:Set(唯一,无序)  实现类:HashSet(哈希) TreeSetMap接口:Map  实现类:HashMap----------------------------------------------------------------------ArrayList类特点:长度可变,连续空间,任意类型,类型相同适用情况:适合多次遍历集合方法: boolean  add(Objec

【原】Java学习笔记026 - 集合

1 package cn.temptation; 2 3 public class Sample01 { 4 public static void main(String[] args) { 5 // 需求:从三国演义中评选出四个最帅的武将,并存储下来 6 7 // 因为具备了面向对象的思想,所以创建四个对象来存储 8 Hero hero1 = new Hero("张飞", 18); 9 Hero hero2 = new Hero("赵云", 16); 10 Her

【Java学习笔记】集合转数组---toArray()

1 package p2; 2 3 import java.util.ArrayList; 4 import java.util.Arrays; 5 import java.util.List; 6 7 public class ToArray { 8 9 public static void main(String[] args) { 10 11 /* 12 * 集合转数组 13 * 使用的是Collection接口中的toArray方法. 14 * 集合转成数组:可以对集合中的元素操作方法进

Java学习笔记九(泛型)

1.介绍 所谓的泛型就是将类型作为一种参数来传递,有了泛型后类型不再是一成不变的,可以通过泛型参数来指定.可以提供程序开发的灵活性. 2.泛型类或接口的使用 泛型类声明时,与普通类没有太大的区别,只是在类中加入了类型变量的声明 public class 类名<类型变量>{..........................................................................} <span style="font-family:SimS

【Java学习笔记】集合框架Ⅱ

迭代 ●迭代是取出集合中元素的一种方式. ●因为Collection中有iterator方法,所以每一个子类集合对象都具备迭代器. ●用法: 第一种 for (iterator iter=iterator(); iter.hasNext();) //老外比较喜欢用这种,省内存(iter的内存),开发时用这个 { System.out.println(iter.next()); } 第二种 Iterator iter = l.iterator(); while(iter.hasNext()) {

【Java学习笔记】&lt;集合框架&gt;Iterator的子接口ListIterator

1 import java.util.ArrayList; 2 import java.util.Iterator; 3 import java.util.List; 4 5 public class Test3 { 6 7 public static void main(String[] args) { 8 List list = new ArrayList(); 9 10 list.add("abc1"); 11 list.add("abc2"); 12 lis