Icon Link队列库

队列是一种遵循先进先出(FIFO)原则的线性结构。这意味着先添加的元素是先被移除的元素。

有关队列库的实现细节,请参阅Sway Libs 文档 Icon Link

Icon Link导入队列库

要使用队列库,必须将 Sway Libs 添加到Forc.toml文件中,然后将其导入到您的 Sway 项目中。要将 Sway Libs 作为项目的依赖项添加到Forc.toml文件中,请参阅入门指南

要将队列库导入到您的 Sway 智能合约中,请在您的 Sway 文件中添加以下内容:

use sway_libs::queue::*;

Icon Link基本功能

Icon Link实例化新队列

一旦导入了Queue,您可以通过调用new函数创建一个新的队列实例。

let mut queue = Queue::new();

Icon Link入队元素

使用enqueue函数可以向Queue添加元素。

// Enqueue an element to the queue
queue.enqueue(10u8);

Icon Link出队元素

要从Queue中移除元素,使用dequeue函数。此函数遵循 FIFO 原则。

// Dequeue the first element and unwrap the value
let first_item = queue.dequeue().unwrap();

Icon Link获取头部元素

要检索Queue头部的元素而不将其删除,可以使用peek函数。

// Peek at the head of the queue
let head_item = queue.peek();

Icon Link检查队列的长度

可以使用is_emptylen函数来检查队列是否为空,并分别获取队列中的元素数量。

// Checks if queue is empty (returns True or False)
let is_queue_empty = queue.is_empty();
 
// Returns length of queue
let queue_length = queue.len();