Rust具有单元类型,()具有单个零大小值的类型.此单位类型的值也使用().
单位类型及其价值的目的是什么?它是一种避免像其他语言一样使用null(或nil)的机制吗?
的Display性状的定义如下:
pub trait Display {
fn fmt(&self, &mut Formatter) -> Result<(), Error>;
}
Run Code Online (Sandbox Code Playgroud)
对我来说最神秘的事情是()类型声明中的空括号集Result<(), Error>.它是什么,它的目的是什么?
作为学习Rust的简单练习,我决定实现一个简单的二进制搜索:
pub fn binary_search(arr: &[i32], key: i32) -> usize {
let min: usize = 0;
let max: usize = arr.len();
while max >= min {
let mid: usize = (max - min) / 2 as usize;
if key == arr[mid] {
mid as usize
}
if key < arr[mid] {
min = mid + 1;
continue;
}
max = mid - 1;
}
-1 as usize
}
#[cfg(test)]
mod tests {
use super::binary_search;
#[test]
fn binary_search_works() {
let arr: [i32; …Run Code Online (Sandbox Code Playgroud)