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

建设银行朝阳支行网站北京网站建设网站改版的费用

建设银行朝阳支行网站,北京网站建设网站改版的费用,广州新塘网站建设推广公司,工程建设项目在哪个网站查询目录 数组工具类基本操作 1.排序#xff1a;升序#xff0c;降序 2.查找 1#xff09;查找最值#xff1a;最大值#xff0c;最小值 2#xff09;查找满足条件的单个对象 3#xff09;查找满足条件的所有对象 4#xff09;选取数组中所有对象的某一字段 完整代…目录 数组工具类基本操作 1.排序升序降序 2.查找 1查找最值最大值最小值 2查找满足条件的单个对象 3查找满足条件的所有对象 4选取数组中所有对象的某一字段 完整代码 测试 1.测试代码 2.测试结果 本篇文章来分享一下如何实现数组工具类。工具类一般具有很强的通用性复用性很强在需要时就可以移植到项目可以让我们的工作更加快捷方便。今天要分享的数组工具类实现了有关数组基本操作。 数组工具类基本操作 1.排序升序降序 可以参考 【一文读懂】C#如何实现通用的排序功能 进行理解 /// summary /// 选择委托 /// 返回数据类型T的属性Tkey的值 /// /summary /// typeparam nameT数据类型/typeparam /// typeparam nameTkey数据类型T的字段/typeparam /// returns选择的属性/returns public delegate TKey SelectHandlerT, TKey(T t);//注意是写在类外/// summary /// 使用委托对任何数据类型数组进行升序排序 /// /summary /// typeparam nameT数据类型/typeparam /// typeparam nameTkey数据类型T的字段/typeparam /// param namearray数据类型T的数组/param /// param nameselectHandler选择委托的对象/param public static void OrderByT, Tkey(T[] array, SelectHandlerT, Tkey selectHandler)where Tkey : IComparableTkey {for (int i 0; i array.Length; i){for (int j i 1; j array.Length; j){//将委托已经取得数据类型的属性的进行比较if (selectHandler(array[i]).CompareTo(selectHandler(array[j])) 0){T temp array[i];array[i] array[j];array[j] temp;}}} }/// summary /// 使用委托对任何数据类型数组进行降序排序 /// /summary /// typeparam nameT数据类型/typeparam /// typeparam nameTkey数据类型T的字段/typeparam /// param namearray数据类型T的数组/param /// param nameselectHandler选择委托的对象/param public static void OrderByDescendingT, Tkey(T[] array, SelectHandlerT, Tkey selectHandler)where Tkey : IComparableTkey {for (int i 0; i array.Length; i){for (int j i 1; j array.Length; j){//将委托已经取得数据类型的属性的进行比较if (selectHandler(array[i]).CompareTo(selectHandler(array[j])) 0){T temp array[i];array[i] array[j];array[j] temp;}}} } 2.查找 1查找最值最大值最小值 /// summary /// 查找最大值 /// /summary /// typeparam nameT数据类型/typeparam /// typeparam nameTkey数据类型T的字段/typeparam /// param namearray数据类型T的数组/param /// param nameselectHandler选择委托的对象/param /// returns返回T类型的数组中字段Tkey最大的数据/returns public static T MaxT, Tkey(T[] array, SelectHandlerT, Tkey selectHandler)where Tkey : IComparableTkey {T temp array[0];for (int i 1; i array.Length; i){//将委托已经取得数据类型的属性的进行比较if (selectHandler(temp).CompareTo(selectHandler(array[i])) 0){temp array[i];}}return temp; }/// summary /// 查找最小值 /// /summary /// typeparam nameT数据类型/typeparam /// typeparam nameTkey数据类型T的字段/typeparam /// param namearray数据类型T的数组/param /// param nameselectHandler选择委托的对象/param /// returns返回T类型的数组中字段Tkey最大的数据/returns public static T MinT, Tkey(T[] array, SelectHandlerT, Tkey selectHandler)where Tkey : IComparableTkey {T temp array[0];for (int i 1; i array.Length; i){//将委托已经取得数据类型的属性的进行比较if (selectHandler(temp).CompareTo(selectHandler(array[i])) 0){temp array[i];}}return temp; } 2查找满足条件的单个对象 /// summary /// 查找条件委托 表示一个查找条件 /// 数据t是否满足某个条件 /// /summary /// typeparam nameT数据类型/typeparam /// param namet数据类型T的对象/param /// returnsbool值/returns public delegate bool FindHandlerT(T t);//注意是写在类外/// summary /// 查找单个第一个满足条件的对象 /// /summary /// typeparam nameT数据类型/typeparam /// param namearray数据类型T的数组/param /// param namefindHandler查找条件委托/param /// returns返回第一个满足条件的类型为T的对象/returns public static T FindT(T[] array, FindHandlerT findHandler) {T temp default;for (int i 0; i array.Length; i){if (findHandler(array[i])){return array[i];}}return temp; } 3查找满足条件的所有对象 /// summary /// 查找满足条件的所有对象 /// /summary /// typeparam nameT数据类型/typeparam /// param namearray数据类型T的数组/param /// param namefindHandler查找条件委托/param /// returns返回 所有 满足条件的类型为T的 对象/returns /// public static T[] FindAllT(T[] array, FindHandlerT findHandler) {ListT res new ListT();for (int i 0; i array.Length; i){if (findHandler(array[i])){res.Add(array[i]);}}return res.ToArray(); } 4选取数组中所有对象的某一字段 /// summary /// 选取数组中所有对象的某一字段 /// /summary /// typeparam nameT数据类型/typeparam /// typeparam nameTkey数据类型T的字段/typeparam /// param namearray数据类型T的数组/param /// param nameselectHandler选择委托的对象/param /// returns返回数组中所有对象的某一字段组成的数组/returns public static Tkey[] SelectT, Tkey(T[] array, SelectHandlerT, Tkey selectHandler) {Tkey[] res new Tkey[array.Length];for (int i 0; i array.Length; i){res[i] selectHandler(array[i]);}return res; } 完整代码 using System; using System.Collections.Generic;/// summary /// 选择委托 /// 返回数据类型T的属性Tkey的值 /// /summary /// typeparam nameT数据类型/typeparam /// typeparam nameTkey数据类型T的字段/typeparam /// returns选择的属性/returns public delegate TKey SelectHandlerT, TKey(T t);/// summary /// 查找条件委托 表示一个查找条件 /// 数据t是否满足某个条件 /// /summary /// typeparam nameT数据类型/typeparam /// param namet数据类型T的对象/param /// returnsbool值/returns public delegate bool FindHandlerT(T t);/// summary /// 数组助手类 /// 排序:升序 降序 /// 查找:最大 最小 单个 全部... /// /summary public static class ArrayHelper {/// summary/// 升序排序(冒泡排序)/// 使用委托对任何数据类型数组进行排序/// /summary/// typeparam nameT数据类型/typeparam/// typeparam nameTkey数据类型T的字段/typeparam/// param namearray数据类型T的数组/param/// param nameselectHandler选择委托的对象/parampublic static void OrderByT, Tkey(T[] array, SelectHandlerT, Tkey selectHandler)where Tkey : IComparableTkey{for (int i 0; i array.Length; i){for (int j i 1; j array.Length; j){//将委托已经取得数据类型的属性的进行比较if (selectHandler(array[i]).CompareTo(selectHandler(array[j])) 0){T temp array[i];array[i] array[j];array[j] temp;}}}}/// summary/// 降序排序(冒泡排序)/// 使用委托对任何数据类型数组进行排序/// /summary/// typeparam nameT数据类型/typeparam/// typeparam nameTkey数据类型T的字段/typeparam/// param namearray数据类型T的数组/param/// param nameselectHandler选择委托的对象/parampublic static void OrderByDescendingT, Tkey(T[] array, SelectHandlerT, Tkey selectHandler)where Tkey : IComparableTkey{for (int i 0; i array.Length; i){for (int j i 1; j array.Length; j){//将委托已经取得数据类型的属性的进行比较if (selectHandler(array[i]).CompareTo(selectHandler(array[j])) 0){T temp array[i];array[i] array[j];array[j] temp;}}}}/// summary/// 查找最大值/// /summary/// typeparam nameT数据类型/typeparam/// typeparam nameTkey数据类型T的字段/typeparam/// param namearray数据类型T的数组/param/// param nameselectHandler选择委托的对象/param/// returns返回T类型的数组中字段Tkey最大的数据/returnspublic static T MaxT, Tkey(T[] array, SelectHandlerT, Tkey selectHandler)where Tkey : IComparableTkey{T temp array[0];for (int i 1; i array.Length; i){//将委托已经取得数据类型的属性的进行比较if (selectHandler(temp).CompareTo(selectHandler(array[i])) 0){temp array[i];}}return temp;}/// summary/// 查找最小值/// /summary/// typeparam nameT数据类型/typeparam/// typeparam nameTkey数据类型T的字段/typeparam/// param namearray数据类型T的数组/param/// param nameselectHandler选择委托的对象/param/// returns返回T类型的数组中字段Tkey最大的数据/returnspublic static T MinT, Tkey(T[] array, SelectHandlerT, Tkey selectHandler)where Tkey : IComparableTkey{T temp array[0];for (int i 1; i array.Length; i){//将委托已经取得数据类型的属性的进行比较if (selectHandler(temp).CompareTo(selectHandler(array[i])) 0){temp array[i];}}return temp;}/// summary/// 查找单个第一个满足条件的对象/// /summary/// typeparam nameT数据类型/typeparam/// param namearray数据类型T的数组/param/// param namefindHandler查找条件委托/param/// returns返回第一个满足条件的类型为T的对象/returnspublic static T FindT(T[] array, FindHandlerT findHandler){T temp default;for (int i 0; i array.Length; i){if (findHandler(array[i])){return array[i];}}return temp;}/// summary/// 查找所有满足条件的对象/// /summary/// typeparam nameT数据类型/typeparam/// param namearray数据类型T的数组/param/// param namefindHandler查找条件委托/param/// returns返回所有满足条件的类型为T的对象/returns/// public static T[] FindAllT(T[] array, FindHandlerT findHandler){ListT res new ListT();for (int i 0; i array.Length; i){if (findHandler(array[i])){res.Add(array[i]);}}return res.ToArray();}/// summary/// 选取数组中所有对象的某一字段/// /summary/// typeparam nameT数据类型/typeparam/// typeparam nameTkey数据类型T的字段/typeparam/// param namearray数据类型T的数组/param/// param nameselectHandler选择委托的对象/param/// returns返回数组中所有对象的某一字段组成的数组/returnspublic static Tkey[] SelectT, Tkey(T[] array, SelectHandlerT, Tkey selectHandler){Tkey[] res new Tkey[array.Length];for (int i 0; i array.Length; i){res[i] selectHandler(array[i]);}return res;} } 测试 1.测试代码 排序功能测试可查看【一文读懂】C#如何实现通用的排序功能如下是对数组工具类的查找功能进行测试 using System; using UnityEngine;namespace ArrayHelperTest {public class ArrayHelperTest : MonoBehaviour{public void Start(){int[] intArray { 4, 1, 5, 0 };string[] stringArray { 2, a, ab, hello, 0 };Student[] studentArray {new Student(){ Id1001,Name张三,Age20 },new Student(){ Id1003,Name李四,Age18 },new Student(){ Id1002,Name赵六,Age21 },new Student(){ Id1000,Name王五,Age19 },new Student(){ Id1004,Name孙七,Age18 }};//查找//1查找最值最大值最小值FindMaxAndMinTestint, int(intArray, value value );FindMaxAndMinTeststring, string(stringArray, value value);FindMaxAndMinTestStudent, int(studentArray, student student.Id);FindMaxAndMinTestStudent, string(studentArray, student student.Name);//2查找满足条件的单个对象(第一个)ArrayHelper.Findint(intArray, value value 0);ArrayHelper.Findstring(stringArray, value value a);ArrayHelper.FindStudent(studentArray, student student.Age18);//3查找满足条件的所有对象Student[] students ArrayHelper.FindAllStudent(studentArray, student student.Age 18);string studentStr ;foreach (var student in students){studentStr student.Id student.Name student.Age \n;}Debug.Log(studentStr);//4选取数组中所有对象的某一字段string[] names ArrayHelper.SelectStudent,string(studentArray, student student.Name);string nameStr ;foreach (var name in names){nameStr name ;}Debug.Log(nameStr);}private void FindMaxAndMinTestT, Tkey(T[] array, SelectHandlerT, Tkey selectHandler) where Tkey : IComparableTkey{Debug.Log(array.GetType() 测试\n最小值 ArrayHelper.MinT, Tkey(array, selectHandler) 最大值 ArrayHelper.MaxT, Tkey(array, selectHandler));}}public class Student{public int Id { get; set; }public string Name { get; set; }public int Age { get; set; }} } 2.测试结果 ​ 好了本次的分享到这里就结束啦希望对你有所帮助~
http://www.w-s-a.com/news/841136/

相关文章:

  • 菜鸟网站编程广州网站设计权威乐云践新
  • 网站做接口到app 价格大地资源免费视频观看
  • 怎么给钓鱼网站做防红网站建设相关的
  • 教育培训的网站建设湖南网站建设小公司
  • 福建南平网站建设创意交易平台网
  • 做直播网站要哪些技术内容营销理论
  • 价格划算的网站开发怎么找有赞做网站
  • 做网站店铺图片用什么软件网络营销方案格式
  • 做外贸要自己建网站吗有效的网络营销方式
  • 精通网站开发书籍做网站获取手机号码
  • 论坛做视频网站有哪些济南新站seo外包
  • 哪类型网站容易做冷水滩做微网站
  • 搭建企业网站流程保定徐水网站建设
  • 建设单位到江川区住房和城乡建设局网站伦敦 wordpress 设计
  • 响应式网站的服务麦德龙网站建设目标
  • 做国外单的网站叫什么海南省海口市网站建设
  • 杭州响应式网站案例wordpress5.2.2
  • 网站建设运营维护合同wordpress资源搜索插件
  • 国外网站流量查询东莞网站建设教程
  • 餐饮类网站建设达到的作用东莞工程建设交易中心网
  • 网站设计 知识产权湖北网站建设xiduyun
  • 猫咪网站模版下载中国风 古典 红色 网站源代码
  • 个人网站备案模板制作网站首页
  • 潍坊正规建设网站网站建设设计作业
  • 推荐一下网站谢谢辽宁住房城乡建设部官方网站
  • 网站文件大小英选 网站开发
  • 济南建网站哪家好wordpress编辑器排行
  • 在福州做搬家网站多少钱画册设计网站有哪些
  • 如何让别人浏览我做的网站哪些方法可以建设网站
  • 网站建设与管理网络推广的优点