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


Rust slice.partition_dedup_by_key用法及代碼示例

本文簡要介紹rust語言中 slice.partition_dedup_by_key 的用法。

用法

pub fn partition_dedup_by_key<K, F>(&mut self, key: F) -> (&mut [T], &mut [T]) where    F: FnMut(&mut T) -> K,    K: PartialEq<K>,

將除第一個連續元素之外的所有元素移動到解析為相同鍵的切片末尾。

返回兩個切片。第一個不包含連續重複的元素。第二個包含沒有指定順序的所有重複項。

如果切片已排序,則返回的第一個切片不包含重複項。

例子

#![feature(slice_partition_dedup)]

let mut slice = [10, 20, 21, 30, 30, 20, 11, 13];

let (dedup, duplicates) = slice.partition_dedup_by_key(|i| *i / 10);

assert_eq!(dedup, [10, 20, 30, 20, 11]);
assert_eq!(duplicates, [21, 30, 13]);

相關用法


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