C# List类常用操作 之 查找

  
//  
//  
//  作者:鸟哥
//  
//  email:xiaoniao2003@gmail.com
//
//
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization.Formatters;class Program
{class Student{internal string Name;internal int Age;internal Student(string n, int a){Name = n;Age = a;}public override string ToString(){return "name:"+Name+",age"+Age;}}static void Main(){List<Student> students = new List<Student>{new Student("aa",12),new Student("bb",14),new Student("ff",16),new Student("cc",12),new Student("ee",15),};//是否students中的所有对象的Age都大于10bool b=students.All(stu => stu.Age >10);Console.WriteLine("All:"+b);//是否students中有对象的Age都大于13b = students.Any(stu => stu.Age > 13);Console.WriteLine("Any:"+b);//列表中是否包含某个对象b=students.Contains(new Student("bb", 14));Console.WriteLine("Contains:"+b);b = students.Contains(students[1]);Console.WriteLine("Contains:" + b);//列表中是否存在Name 是 bb的对象b = students.Exists(stu => stu.Name == "bb");Console.WriteLine("Exists:" + b);//搜索Age为12的所有对象的第一个对象Student s=students.Find(stu => stu.Age == 12);Console.WriteLine("Find:" + s);//搜索Age为12的所有对象的最后一个对象s = students.FindLast(stu => stu.Age == 12);Console.WriteLine("FindLast:" + s);//搜索所有Name为bb 或Age为14的对象,以列表形式返回var r=students.FindAll(stu=>stu.Name=="bb"||stu.Age == 14);Console.WriteLine("FindAll:" + r.Count);//获取Name为bb 或Age为14的所有对象的第一个对象int index = students.FindIndex(stu => stu.Name == "bb" || stu.Age == 14);Console.WriteLine("FindIndex:" + index);index=students.IndexOf(students[1]);Console.WriteLine("IndexOf:" + index);}
}

运行结果:

All:True
Any:True
Contains:False
Contains:True
Exists:True
Find:name:aa,age12
FindLast:name:cc,age12
FindAll:1
FindIndex:1
IndexOf:1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/212845.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Pandas实践_pandas基础

文章目录 一、文件的读取和写入1.文件读取2.数据写入 二、基本数据结构1.Series2.DataFrame 三、常用基本函数1.汇总函数2.特征统计函数3.唯一值函数4.替换函数5.排序函数6.apply方法 四、窗口对象1.滑窗对象2.扩张窗口 一、文件的读取和写入 1.文件读取 pandas可以读取的文件…

rust宏(macro)详解

前言 rust 学习曲线非常陡峭&#xff0c;但是基本语法也还算挺好理解&#xff0c;自动内存管理有点类似智能指针&#xff0c;基本看一下语法入门就可以大概理解&#xff0c;但是唯独宏很难理解&#xff0c;语法非常晦涩。但是功能非常强大。声明宏类似于c语言的宏处理&#xf…

docker-ubuntu中基于keepalived+niginx模拟主从热备完整过程

一、环境准备 &#x1f517;在Ubuntu中安装docker 二、主机 1、环境搭建 1.1 镜像拉取 docker pull ubuntu:16.041.2 创建网桥 docker network create -dbridge --subnet192.168.126.0/24 br11.3 启动容器 docker run -it --name ubuntu-1 --privileged -v /home/vac/l…

为 Compose MultiPlatform 添加 C/C++ 支持(2):在 jvm 平台使用 jni 实现桌面端与 C/C++ 互操作

前言 在上篇文章中我们已经介绍了实现 Compose MultiPlatform 对 C/C 互操作的基本思路。 并且先介绍了在 kotlin native 平台使用 cinterop 实现与 C/C 的互操作。 今天这篇文章将补充在 jvm 平台使用 jni。 在 Compose MultiPlatform 中&#xff0c;使用 jvm 平台的是 An…

Kubernetes实战(十)-升级k8s集群

1 Kubernetes(k8s) 集群升级过程 Kubernetes 使用 kubeadm 工具来管理集群组件的升级。在集群节点层面&#xff0c;升级 Kubernetes(k8s)集群的过程可以分为以下几个步骤&#xff1a; 1&#xff09;检查当前环境和配置是否满足升级要求。 2&#xff09;升级master主节点&…

如何一个例子玩明白GIT

一个例子玩明白GIT GIT的介绍和教程五花八门&#xff0c;但实际需要用的就是建仓、推送、拉取等操作&#xff0c;这儿咱可以通过一个例子熟悉这些操作&#xff0c;一次性搞定GIT的使用方法学习。下面这个例子的内容是内容是建立初始版本库&#xff0c;然后将数据复制到 "远…

轻量封装WebGPU渲染系统示例<45>- 材质组装流水线(MaterialPipeline)灯光、阴影、雾(源码)

当前示例源码github地址: https://github.com/vilyLei/voxwebgpu/blob/feature/material/src/voxgpu/sample/MaterialPipelineFog.ts 当前示例运行效果: 此示例基于此渲染系统实现&#xff0c;当前示例TypeScript源码如下&#xff1a; export class MaterialPipelineFog {pr…

数组创建方法

数组的创建 1.let a[] 2.let anew Array(5) 3.let anew Array(1,2,3) 4.let a[1,2,3] 创建数组是空还是有值是以上四种写法。但是如果没给值的变量是undefined&#xff0c;再a[0]找不到这种变量的。所以当找某一个数需要已经是数组内存。不想给值可以给空数组。只要是数组…

MEMS制造的基本工艺介绍——晶圆键合

晶圆键合是一种晶圆级封装技术&#xff0c;用于制造微机电系统 (MEMS)、纳米机电系统 (NEMS)、微电子学和光电子学&#xff0c;确保机械稳定和气密密封。用于 MEMS/NEMS 的晶圆直径范围为 100 毫米至 200 毫米&#xff08;4 英寸至 8 英寸&#xff09;&#xff0c;用于生产微电…

【重点】【环链表入口】142. 环形链表 II

题目 public class Solution {public ListNode detectCycle(ListNode head) {if (head null || head.next null) {return null;}ListNode slow head, fast head;while (fast ! null && fast.next ! null) {slow slow.next;fast fast.next.next;if (slow fast) …

SQL语句---更新数据

介绍 使用sql语句更新数据。 命令 update 表名 set 字段1值1[,字段2值2] [where 条件表达式];[]&#xff08;方括号&#xff09;内的表是表示可选。 例子 将a表id值等于1的数据的名称改为666 update a set name666 where id1;

2023-12-05 Qt学习总结7

点击 <C 语言编程核心突破> 快速C语言入门 Qt学习总结 前言二十 QTcpSocket QTcpServer网络库服务端代码:客户端代码 二十一 QProcess进程类二十二 QThread线程总结 前言 要解决问题: 学习qt最核心知识, 多一个都不学. 二十 QTcpSocket QTcpServer网络库 QTcpSocket和…

持续集成交付CICD:Jenkins流水线实现Nexus制品晋级策略

目录 一、理论 1.开发测试运维环境 二、实验 1.Nexus制品晋级策略 一、理论 1.开发测试运维环境 &#xff08;1&#xff09;环境 1&#xff09;持续集成开发环境&#xff08;DEV: Development Environment&#xff09; 直接通过源代码编译打包&#xff0c;其会跑单元测试…

python 笔记 :trajectory_distance包(如何可以正确使用)【debug篇】

包的地址&#xff1a;maikol-solis/trajectory_distance (github.com) 1 模块介绍 用Cython实现的Python模块&#xff0c;用于计算二维轨迹之间的距离 trajectory_distance包提供了9种轨迹间的距离计算方法&#xff1a; SSPD&#xff08;对称线段路径距离&#xff09;OWD&a…

机器学习算法(9)——集成技术(Bagging——随机森林分类器和回归)

一、说明 在这篇文章&#xff0c;我将向您解释集成技术和著名的集成技术之一&#xff0c;它属于装袋技术&#xff0c;称为随机森林分类器和回归。 集成技术是机器学习技术&#xff0c;它结合多个基本模块和模型来创建最佳预测模型。为了更好地理解这个定义&#xff0c;我们需要…

WLAN配置实验

本文记录了WLAN配置实践的过程&#xff0c;该操作在华为HCIA中属于相对较复杂的实验&#xff0c;记录过程备忘。这里不就WLAN原理解释&#xff0c;仅进行配置实践&#xff0c;可以作为学习原理时候的参考。本文使用华为ENSP进行仿真。实验拓扑图如下&#xff1a; 1.WLAN工作流程…

【electron】外语函数接口 FFI

▒ 目录 ▒ &#x1f6eb; 导读需求开发环境 1️⃣ FFI概念优点注意事项 2️⃣ 【废弃】node-ffi3️⃣ node-ffi-napi安装&#xff08;windows系统下&#xff09;示例&#xff1a;MessageBoxA、NtSuspendProcess 4️⃣ node-win32-api安装示例&#xff1a;查找窗口并设置窗口标…

UE5数据传递-纹理贴图

期待结果&#xff1a; 流程 1. 通过C写入数据到纹理贴图 2. 在材质中通过采样能正确读取写入的数值 踩坑&#xff1a; 1. UE5之后&#xff0c;需要设置采样类型&#xff0c;才能达到上图效果&#xff0c;默认采样类型做了插值计算 FColor中写入 PF_B8G8R8A8 UTexture2D* Conve…

第四题:憧憬(JavaPythonC++实现)【第六届传智杯-新增场次-程序设计挑战赛解题分析详解复盘】

本文仅为【2023传智杯-第二场】第六届传智杯程序设计挑战赛-题目解题分析详解的解题个人笔记,个人解题分析记录。 本文包含:第六届传智杯程序设计挑战赛题目、解题思路分析、解题代码、解题代码详解(Java&Python&C++实现) 文章目录 更新进度记录第四题:憧憬(Java…

AI 绘画 | Stable Diffusion 艺术二维码制作

前言 这篇文章教会你如果用Stable Diffusion WEB UI制作艺术二维码,什么是艺术二维码呢?就是普通二维码和艺术图片融合后的二维码图片,如下图所示。主要原理还是使用controlNet的control_v1p_sd15_qrcode_monster模型和光影模型control_v1p_sd15_brightness。 教程 准备…