C# 中操作集合的方法
-
Add:向集合中添加元素。
List<int> numbers = new List<int>(){ 1, 2, 3 }; numbers.Add(4); // numbers 现在为 { 1, 2, 3, 4 } -
Remove:从集合中移除指定的元素。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; numbers.Remove(3); // numbers 现在为 { 1, 2, 4 } -
Contains:检查集合中是否包含指定的元素。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; bool containsThree = numbers.Contains(3); // containsThree 为 true -
Clear:从集合中移除所有元素。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; numbers.Clear(); // numbers 现在为空集合 {} -
Count:获取集合中元素的数量。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; int count = numbers.Count; // count 现在为 4 -
Sort:对集合进行排序。
List<int> numbers = new List<int>(){ 3, 2, 4, 1 }; numbers.Sort(); // numbers 现在为 { 1, 2, 3, 4 } -
Reverse:反转集合中元素的顺序。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; numbers.Reverse(); // numbers 现在为 { 4, 3, 2, 1 } -
Find:查找符合指定条件的第一个元素。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; int evenNumber = numbers.Find(x => x % 2 == 0); // evenNumber 现在为 2 -
FindAll:查找符合指定条件的所有元素。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; List<int> evenNumbers = numbers.FindAll(x => x % 2 == 0); // evenNumbers 现在为 { 2, 4 } -
FindIndex:查找符合指定条件的第一个元素的索引。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; int index = numbers.FindIndex(x => x % 2 == 0); // index 现在为 1(等于2的索引) -
FindLast:查找符合指定条件的最后一个元素。
List<int> numbers = new List<int>(){ 1, 2, 3, 4, 2 }; int lastNumber = numbers.FindLast(x => x == 2); // lastNumber 现在为 2 -
FindLastIndex:查找符合指定条件的最后一个元素的索引。
List<int> numbers = new List<int>(){ 1, 2, 3, 4, 2 }; int lastIndex = numbers.FindLastIndex(x => x == 2); // lastIndex 现在为 4(等于2的最后一个索引) -
TrueForAll:判断集合中的所有元素是否都满足指定条件。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; bool allEven = numbers.TrueForAll(x => x % 2 == 0); // allEven 为 false -
Exists:判断集合中是否存在满足指定条件的元素。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; bool evenExists = numbers.Exists(x => x % 2 == 0); // evenExists 为 true -
Distinct:从集合中排除重复的元素。
List<int> numbers = new List<int>(){ 1, 2, 2, 3, 3, 4 }; List<int> distinctNumbers = numbers.Distinct().ToList(); // distinctNumbers 现在为 { 1, 2, 3, 4 } -
Union:合并两个集合,生成一个包含两个集合中唯一元素的新集合。
List<int> numbers1 = new List<int>(){ 1, 2, 3 }; List<int> numbers2 = new List<int>(){ 3, 4, 5 }; List<int> uniqueNumbers = numbers1.Union(numbers2).ToList(); // uniqueNumbers 现在为 { 1, 2, 3, 4, 5 } -
Intersect:获取两个集合中共有的元素。
List<int> numbers1 = new List<int>(){ 1, 2, 3 }; List<int> numbers2 = new List<int>(){ 3, 4, 5 }; List<int> commonNumbers = numbers1.Intersect(numbers2).ToList(); // commonNumbers 现在为 { 3 } -
Except:从第一个集合中移除在第二个集合中存在的元素。
List<int> numbers1 = new List<int>(){ 1, 2, 3, 4 }; List<int> numbers2 = new List<int>(){ 3, 4, 5 }; List<int> remainingNumbers = numbers1.Except(numbers2).ToList(); // remainingNumbers 现在为 { 1, 2 } -
Concat:将两个集合连接为一个新的集合。
List<int> numbers1 = new List<int>(){ 1, 2, 3 }; List<int> numbers2 = new List<int>(){ 4, 5 }; List<int> combinedNumbers = numbers1.Concat(numbers2).ToList(); // combinedNumbers 现在为 { 1, 2, 3, 4, 5 } -
Aggregate:使用指定的函数将集合中的元素聚合为一个值。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; int sum = numbers.Aggregate((x, y) => x + y); // sum 现在为 10 -
Any:判断集合中是否存在满足指定条件的元素。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; bool anyEven = numbers.Any(x => x % 2 == 0); // anyEven 为 true -
All:判断集合中的所有元素是否都满足指定条件。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; bool allEven = numbers.All(x => x % 2 == 0); // allEven 为 false -
Min:获取集合中的最小值。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; int min = numbers.Min(); // min 现在为 1 -
Max:获取集合中的最大值。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; int max = numbers.Max(); // max 现在为 4 -
Average:计算集合中元素的平均值。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; double average = numbers.Average(); // average 现在为 2.5 -
Sum:计算集合中元素的总和。
List<int> numbers = new List<int>(){ 1, 2, 3, 4 }; int sum = numbers.Sum(); // sum 现在为 10
请注意,示例中使用的集合类型为List<int>,其他数据类型和集合类型也可以按照类似的方式使用这些操作方法。
相关文章:
C# 中操作集合的方法
Add:向集合中添加元素。 List<int> numbers new List<int>(){ 1, 2, 3 }; numbers.Add(4); // numbers 现在为 { 1, 2, 3, 4 }Remove:从集合中移除指定的元素。 List<int> numbers new List<int>(){ 1, 2, 3, 4 }; numbers.Re…...
pytorch学习(8)——现有网络模型的使用以及修改
1 vgg16模型 1.1 vgg16模型的下载 采用torchvision中的vgg16模型,能够实现1000个类型的图像分类,VGG模型在AlexNet的基础上使用3*3小卷积核,增加网络深度,具有很好的泛化能力。 首先下载vgg16模型,python代码如下&…...
get和post请求的区别
GET和POST是HTTP请求的两种方法,其区别如下 ① GET请求表示从指定的服务器中获取数据(请求数据),比如查询用户信息;POST请求表示将数据提交到指定的服务器进行处理(发送数据), ② GET请求是一个幂等的请求,一般用于对服务器资源不会产生影响的场景,比如说请求一个网友的…...
extern “C”关键字的作用
目录 概述C和C在函数调用和变量命名等方面的差异示例总结 概述 extern "C"是用于在C中声明使用C语言编写的函数和变量的关键字。C和C在函数调用和变量命名等方面存在一些差异,为了在C代码中正确地使用C语言的函数和变量,需要使用extern "…...
使用ffmpeg截取视频片段
本文将介绍2中使用ffmpeg截取视频的方法 指定截取视频的 开始时间 和 结束时间,进行视频截取指定截取视频的 开始时间 和 截取的秒数,进行视频截取 两种截取方式的命令行如下 截取某一时间段视频 优先使用 ffmpeg -i ./input.mp4 -c:v libx264 -crf…...
Python教程(11)——Python中的字典dict的用法介绍
dict的用法介绍 创建字典访问字典修改字典删除字典字典的相关函数 列表虽然好,但是如果需要快速的数据查找,就必须进行需要遍历,也就是最坏情况需要遍历完一遍才能找到需要的那个数据,时间复杂度是O(n),显然这个速度是…...
三道dfs题
一:1114. 棋盘问题 - AcWing题库 分别枚举行和列,能填的地方就填,dfs就行 #include <iostream> using namespace std;const int N 10; char g[N][N]; int n, k; int res; bool st[N];void dfs(int u, int cnt) // u枚举行 {if(cnt …...
Seaborn数据可视化(四)
目录 1.绘制箱线图 2.绘制小提琴图 3.绘制多面板图 4.绘制等高线图 5.绘制热力图 1.绘制箱线图 import seaborn as sns import matplotlib.pyplot as plt # 加载示例数据(例如,使用seaborn自带的数据集) tips sns.load_dataset("t…...
kubernetes deploy standalone mysql demo
kubernetes 集群内部署 单节点 mysql ansible all -m shell -a "mkdir -p /mnt/mysql/data"cat mysql-pv-pvc.yaml apiVersion: v1 kind: PersistentVolume metadata:name: mysql-pv-volumelabels:type: local spec:storageClassName: manualcapacity:storage: 5Gi…...
【Map】Map集合有序与无序测试案例:HashMap,TreeMap,LinkedHashMap(121)
简单介绍常用的三种Map:不足之处,欢迎指正! HashMap:put数据是无序的; TreeMap:key值按一定的顺序排序;数字做key,put数据是有序,非数字字符串做key,put数据…...
TiDB Serverless Branching:通过数据库分支简化应用开发流程
2023 年 7 月 10 日,TiDB Serverless 正式商用。这是一个完全托管的数据库服务平台(DBaaS),提供灵活的集群配置和基于用量的付费模式。紧随其后,TiDB Serverless Branching 的测试版也发布了。 TiDB Serverless Branc…...
运用亚马逊云科技Amazon Kendra,快速部署企业智能搜索应用
亚马逊云科技Amazon Kendra是一项由机器学习(ML)提供支持的企业搜索服务。Kendra内置数据源连接器,支持快速访问Amazon S3、AmazonRDS、AmazonFSX以及其他外部数据源,帮助用户自动提取文档并建立索引。Kendra支持超过30多种多国语…...
C# 使用 OleDbConnection 连接读取Excel的方法
Connection类有四种:SqlConnection,OleDbConnection,OdbcConnection和OracleConnection。 (1)Sqlconnetcion类的对象连接是SQL Server数据库; (2)OracleConnection类的对象连接Oracle数据库&…...
【LeetCode-中等题】98. 验证二叉搜索树
文章目录 题目方法一:BFS 层序遍历方法二: 递归方法三: 中序遍历(栈)方法四: 中序遍历(递归) 题目 思路就是首先得知道什么是二叉搜索树 左孩子在(父节点的最小值&#x…...
Leetcode-每日一题【剑指 Offer 37. 序列化二叉树】
题目 请实现两个函数,分别用来序列化和反序列化二叉树。 你需要设计一个算法来实现二叉树的序列化与反序列化。这里不限定你的序列 / 反序列化算法执行逻辑,你只需要保证一个二叉树可以被序列化为一个字符串并且将这个字符串反序列化为原始的树结构。 …...
删除无点击数据offer数据分析使用
梳理思路: 1、 获取 7month 和 8month fullreport 报表中 所有offer;输出结果:offerid, totalClickCount; 2、 分析数据7month totalClickCount0 and 8month totalClickCount0 的offer去除; result.…...
【Apollo学习笔记】——规划模块TASK之SPEED_BOUNDS_PRIORI_DECIDER
文章目录 前言SPEED_BOUNDS_PRIORI_DECIDER功能简介SPEED_BOUNDS_PRIORI_DECIDER相关配置SPEED_BOUNDS_PRIORI_DECIDER流程将障碍物映射到ST图中ComputeSTBoundary(PathDecision* path_decision)ComputeSTBoundary(Obstacle* obstacle)GetOverlapBoundaryPointsComputeSTBounda…...
物理机ping不通windows server 2012
刚才尝试各种方法,在物理机上就是ping不能wmware中的windows server 2012 . 折腾了几个小时,原来是icmp 被windows server 2012 禁用了 现在使用使用以下协议就能启用Icmp协议。 netsh firewall set icmpsetting 8然后,就能正常ping 通虚…...
誉天HCIE-Datacom丨为什么选择誉天数通HCIE课程学习
大家好,我是誉天HCIE-Datacom的一名学员,在2022年觉得自己技术水平不够,想要提升自己,经朋友介绍在誉天报的名。 听朋友说誉天的阮Sir的课讲的非常好,我在B站上看了几节阮老师的课确实比之前在听得其他机构的课程讲的要…...
Python文本终端GUI框架详解
今天笔者带大家,梳理几个常见的基于文本终端的 UI 框架,一睹为快! Curses 首先出场的是 Curses。 Curses 是一个能提供基于文本终端窗口功能的动态库,它可以: 使用整个屏幕 创建和管理一个窗口 使用 8 种不同的彩色 为程序提供…...
网络六边形受到攻击
大家读完觉得有帮助记得关注和点赞!!! 抽象 现代智能交通系统 (ITS) 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 (…...
第19节 Node.js Express 框架
Express 是一个为Node.js设计的web开发框架,它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用,和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...
k8s从入门到放弃之Ingress七层负载
k8s从入门到放弃之Ingress七层负载 在Kubernetes(简称K8s)中,Ingress是一个API对象,它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress,你可…...
基于数字孪生的水厂可视化平台建设:架构与实践
分享大纲: 1、数字孪生水厂可视化平台建设背景 2、数字孪生水厂可视化平台建设架构 3、数字孪生水厂可视化平台建设成效 近几年,数字孪生水厂的建设开展的如火如荼。作为提升水厂管理效率、优化资源的调度手段,基于数字孪生的水厂可视化平台的…...
ardupilot 开发环境eclipse 中import 缺少C++
目录 文章目录 目录摘要1.修复过程摘要 本节主要解决ardupilot 开发环境eclipse 中import 缺少C++,无法导入ardupilot代码,会引起查看不方便的问题。如下图所示 1.修复过程 0.安装ubuntu 软件中自带的eclipse 1.打开eclipse—Help—install new software 2.在 Work with中…...
Android15默认授权浮窗权限
我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...
蓝桥杯3498 01串的熵
问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798, 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...
使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台
🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...
视觉slam十四讲实践部分记录——ch2、ch3
ch2 一、使用g++编译.cpp为可执行文件并运行(P30) g++ helloSLAM.cpp ./a.out运行 二、使用cmake编译 mkdir build cd build cmake .. makeCMakeCache.txt 文件仍然指向旧的目录。这表明在源代码目录中可能还存在旧的 CMakeCache.txt 文件,或者在构建过程中仍然引用了旧的路…...
JVM 内存结构 详解
内存结构 运行时数据区: Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器: 线程私有,程序控制流的指示器,分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 每个线程都有一个程序计数…...
