当前位置: 首页 > wzjs >正文

it教育网站建设正规网站优化推广

it教育网站建设,正规网站优化推广,免费网站软件下载安装,深圳华强北手机报价collections HashMap 概述: 用于存储键值对的数据结构,底层实现是哈希表,因此是无序的。使用开放寻址法处理冲突。 插入数据: use std::collections::HashMap;fn main() {let mut scores HashMap::new();scores.insert("…

collections

HashMap

概述: 用于存储键值对的数据结构,底层实现是哈希表,因此是无序的。使用开放寻址法处理冲突。

插入数据:

use std::collections::HashMap;fn main() {let mut scores = HashMap::new();scores.insert("Alice", 50);scores.insert("Bob", 60);scores.insert("Charlie", 70);println!("scores: {:?}", scores);
}

如果insert的key已经存在,那就会更新value

获取值:

use std::collections::HashMap;fn main() {let mut scores = HashMap::new();scores.insert("Alice", 50);scores.insert("Bob", 60);scores.insert("Charlie", 70);match scores.get("Bob") {Some(&score) => println!("Bob's score: {}", score),None => println!("Bob not found"),}
}

如果key存在,则返回对应的值的引用;否则返回None

检查key是否存在:

use std::collections::HashMap;fn main() {let mut scores = HashMap::new();scores.insert("Alice", 50);scores.insert("Bob", 60);scores.insert("Charlie", 70);if scores.contains_key("Alice") {println!("Alice is in the map");} else {println!("Alice is not in the map");}
}

移除元素:

use std::collections::HashMap;fn main() {let mut scores = HashMap::new();scores.insert("Alice", 50);scores.insert("Bob", 60);scores.insert("Charlie", 70);if let Some(score) = scores.remove("Alice") {println!("Removed Alice with score: {}", score);} else {println!("Alice not found");}println!("scores: {:?}", scores);
}

删除成功返回该键对应的值(Some(value)),否则返回None

遍历HashMap:

use std::collections::HashMap;fn main() {let mut scores = HashMap::new();scores.insert("Alice", 50);scores.insert("Bob", 60);scores.insert("Charlie", 70);for (key, value) in scores {println!("{}: {}", key, value);}
}

获取或插入值:

use std::collections::HashMap;fn main() {let mut scores = HashMap::new();// 如果键不存在,插入一个默认值scores.entry("Alice").or_insert(50);println!("socres: {:?}", scores);// 如果键已经存在,修改它的值*scores.entry("Alice").or_insert(0) += 10;println!("scores: {:?}", scores);
}

在键不存在时插入默认值,或者获取某个键的值并进行修改

LinkedList

概述: 双向链表,在插入和删除元素时不会导致元素的移动(相对于Vec),从而提供了更好的性能,特别是对大规模数据结构

创建LinkedList:

use std::collections::LinkedList;fn main() {// 正常创建let list: LinkedList<i32> = LinkedList::new();println!("{:?}", list);// 从现有的Vec创建let vec = vec![1, 2, 3, 4, 5];let list2 = vec.into_iter().collect::<LinkedList<i32>>();println!("{:?}", list2);
}

插入元素:

use std::collections::LinkedList;fn main() {let mut list = LinkedList::new();// 插入到list前面list.push_front(1);// 插入到list后面list.push_back(2);println!("{:?}", list);
}

删除元素:

use std::collections::LinkedList;fn main() {let mut list = LinkedList::new();list.push_back(1);list.push_back(2);list.push_back(3);// 删除前面的元素let mut removed = list.pop_front();println!("Removed: {:?}", removed);// 删除后面的元素removed = list.pop_back();println!("Removed: {:?}", removed);println!("{:?}", list);
}

访问元素:

use std::collections::LinkedList;fn main() {let mut list = LinkedList::new();list.push_back(1);list.push_back(2);list.push_back(3);// 通过迭代器遍历元素for value in &list {print!("{} ", value);}println!();// 获取头尾元素if let Some(front) = list.front() {println!("Front: {}", front);}if let Some(back) = list.back() {println!("Back: {}", back);}
}
http://www.dtcms.com/wzjs/234329.html

相关文章:

  • 欧美做的爱爱网站有哪些粤语seo是什么意思
  • 免费试用平台网站源码网站优化外包找谁
  • 如何创建div做网站长沙网站关键词推广
  • 做兼职什么网站靠谱哪里有竞价推广托管
  • 山西营销型网站建设网站怎么收录到百度
  • 游戏平台网站今日十大热点新闻头条
  • 天津网站优化指导天津百度关键词推广公司
  • 网站标题大全创建站点的步骤
  • 山西网站建设哪家有北京谷歌seo
  • 一起做网店一样的网站中国十大软件外包公司
  • 网站构建的工作百度网盘登陆
  • 哪学网页设计如何进行网站性能优化?
  • 网站改版 内容潍坊在线制作网站
  • 做盗版电影网站犯法不网页代码
  • 华为云自助建站好不好seo和sem的区别是什么
  • 做餐饮系统网站建设外贸推广渠道有哪些
  • 官方网站举例推广app用什么平台比较好
  • 坪地网站建设基本流程电商运营是做什么的
  • 网站建设后台怎么弄1+x网店运营推广
  • 大鹏外贸网站建设网站推广怎么优化
  • 顺的网站建设咨询网络营销案例分析报告
  • 网站后台操作百度爱采购怎么推广
  • 怎么做服务器网站吗真正免费建站网站
  • 做外贸怎么连接国外网站小程序定制开发
  • 武汉网站设计搜索引擎有哪些分类
  • mysql做网站怎么查看数据库独立站建站平台
  • 如何制作简单软件苏州排名搜索优化
  • 镇政府网站模板搜索引擎优化策略
  • wordpress内插件翻译关键词优化到首页怎么做到的
  • 两个网站合并建设实施方案58同城发布免费广告