當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Rust RangeInclusive用法及代碼示例


本文簡要介紹rust語言中 Struct core::ops::RangeInclusive 的用法。

用法

pub struct RangeInclusive<Idx> { /* fields omitted */ }

範圍包括上下(start..=end)。

RangeInclusive start..=end 包含所有帶有 x >= startx <= end 的值。它是空的,除非 start <= end

這個迭代器是融合的,但具體值startend迭代完成後是未指定除此之外core::ops::RangeInclusive.is_empty將返回true一旦不再產生值。

例子

start..=end 語法是 RangeInclusive

assert_eq!((3..=5), std::ops::RangeInclusive::new(3, 5));
assert_eq!(3 + 4 + 5, (3..=5).sum());
let arr = [0, 1, 2, 3, 4];
assert_eq!(arr[ ..  ], [0, 1, 2, 3, 4]);
assert_eq!(arr[ .. 3], [0, 1, 2      ]);
assert_eq!(arr[ ..=3], [0, 1, 2, 3   ]);
assert_eq!(arr[1..  ], [   1, 2, 3, 4]);
assert_eq!(arr[1.. 3], [   1, 2      ]);
assert_eq!(arr[1..=3], [   1, 2, 3   ]); // This is a `RangeInclusive`

相關用法


注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 Struct core::ops::RangeInclusive。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。