美文网首页
算法 - Java 基础002

算法 - Java 基础002

作者: 刘杰克 | 来源:发表于2020-02-24 17:32 被阅读0次

Java 抽象数据类型

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

  • 创建对象:使用关键字new 触发构造函数并创建对象,初始化对象中的值并返回对它的引用
  • 操作对象中的值:通过对象关联的变量调用实例方法来对对象的值进行操作
  • 操作多个对象:创建对象的数组,将它们传递给方法或从方法中返回,只是变量关联的是对象的引用而非对象本身

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);
}

相关文章

网友评论

      本文标题:算法 - Java 基础002

      本文链接:https://www.haomeiwen.com/subject/tguvqhtx.html