算法 - Java 基础002

2020-02-24  本文已影响0人  刘杰克

Java 抽象数据类型

Java抽象数据类型是一种对外隐藏内部表示的数据类型

Java 数据类型

三种数据类型
1、背包: 不支持从中删除元素的集合数据类型,使用Bag说明元素的处理顺序不重要。

public class Bag<Item> implements Iterable<Item>
          // 创建一个空背包
         Bag()                       
          //  添加一个元素   
    void add(Item item)
         //  背包是否为空              
 boolean isEmpty()
        //   背包中的元素数量
     int size()

2、队列 (先进先出)

public class Queue<Item> implements Iterable<Item>
          // 创建一个空队列
         Queue()                       
          //  添加一个元素   
    void enqueue(Item item)
          //  删除最近添加的元素   
    Item dequeue()
         //  队列是否为空              
 boolean isEmpty()
        //   队列中的元素数量
     int size()

3、栈(后进先出)

public class Stack<Item> implements Iterable<Item>
          // 创建一个空栈
         Stack()                       
          //  添加一个元素   
    void push(Item item)
          //  删除最近添加的元素   
    Item pop()
         //  栈是否为空              
 boolean isEmpty()
        //   栈中的元素数量
     int size()

Java 泛型

泛型:提供了编译时类型安全监测机制
泛型有三种常用的使用方式:泛型类,泛型接口和泛型方法
自动装箱:自动在引用类型和对应的原始数据类型之间进行转换

Stack<Integer> stack = new Stack<Integer>();
// 自动装箱(int->Integer)
stack.push(22);
// 自动拆箱  (Integer->int)
int i = stack.pop();

Java 迭代

1、集合数据类型必须实现一个iterator()方法并返回一个Iterator对象
implements Iterable<Item>
2、Iterator类必须包含两个方法 hasNext() (返回一个布尔值) 和next()
(返回集合中的一个泛型元素), 所谓迭代器就是实现了hasNext()和next() 方法的类的对象

Stack<String> collection = new Stack<String>();
for(String s: collection){
  System.out.println(s);
}
上一篇 下一篇

猜你喜欢

热点阅读