温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C#索引指示器怎么使用

发布时间:2021-12-02 11:08:59 阅读:112 作者:iii 栏目:编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

这篇文章主要讲解了“C#索引指示器怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#索引指示器怎么使用”吧!

C#索引指示器并不难使用。它们的用法跟数组相同。在一个类内部,你可以按照你的意愿来管理一组数据的集合。这些对象可以是类成员的有限集合,也可以是另外一个数组,或者是一些复杂的数据结构。不考虑类的内部实现,其数据可以通过使用C#索引指示器来获得。

实现C#索引指示器(indexer)的类可以象数组那样使用其实例后的对象,但与数组不同的是C#索引指示器的参数类型不仅限于int。简单来说,其本质就是一个含参数属性:

using System;  using System.Collections.Generic;  using System.Text;     namespace Example08  {  public class Point  {  private double x, y;  public Point(double X, double Y)  {  x = X;  y = Y;  }  //重写ToString方法方便输出  public override string ToString()  {  return String.Format("X: {0} , Y: {1}", x, y);  }  }  public class Points  {  Point[] points;  public Points(Point[] Points)  {  points = Points;  }  public int PointNumber  {  get   {   return points.Length;   }  }  //实现索引访问器  public Point this[int Index]  {  get  {  return points[Index];  }  }  }     //感谢watson hua(http://huazhihao.cnblogs.com/)的指点  //索引指示器的实质是含参属性,参数并不只限于int  class WeatherOfWeek  {  public string this[int Index]  {  get  {  //注意case段使用return直接返回所以不需要break  switch (Index)  {  case 0:  {  return "Today is cloudy!";  }  case 5:  {  return "Today is thundershower!";  }  default:  {  return "Today is fine!";  }  }  }  }  public string this[string Day]  {  get  {  string TodayWeather = null;  //switch的标准写法  switch (Day)  {  case "Sunday":  {  TodayWeather = "Today is cloudy!";  break;  }  case "Friday":  {  TodayWeather = "Today is thundershower!";  break;  }  default:  {  TodayWeather = "Today is fine!";  break;  }  }  return TodayWeather;  }  }  }  class Program  {  static void Main(string[] args)  {  Point[] tmpPoints = new Point[10];  for (int i = 0; i < tmpPoints.Length; i++)  {  tmpPoints[i] = new Point(i, Math.Sin(i));  }  Points tmpObj = new Points(tmpPoints);  for (int i = 0; i < tmpObj.PointNumber; i++)  {  Console.WriteLine(tmpObj[i]);  }  string[] Week = new string[] { "Sunday""Monday""Tuesday""Wednesday""Thursday""Friday""Staurday"};  WeatherOfWeek tmpWeatherOfWeek = new WeatherOfWeek();  for (int i = 0; i < 6; i++)  {  Console.WriteLine(tmpWeatherOfWeek[i]);  }  foreach (string tmpDay in Week)  {  Console.WriteLine(tmpWeatherOfWeek[tmpDay]);  }  Console.ReadLine();  }  }  } 

感谢各位的阅读,以上就是“C#索引指示器怎么使用”的内容了,经过本文的学习后,相信大家对C#索引指示器怎么使用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×