C# 中实现索引指示器
for (int i = 1; i <= myWeek.Length; i++)
{
Console.WriteLine(myWeek[i]);
}
下面是一个简单的例子:
1. MyWeek 类
/// 索引指示器的实质是含参属性,
/// 参数并不只限于 int, string 也可以。
/// </summary>
public class MyWeek
{
public int Length
{
get { return 7; }
}
/// <summary>
/// 使用 int 作为参数的索引指示器
/// </summary>
/// <param name="Index"></param>
/// <returns></returns>
public string this[int Index]
{
get
{
string dayName;
switch (Index)
{
case 1:
dayName = "Monday";
break;
case 2:
dayName = "Tuesday";
break;
case 3:
dayName = "Wednesday";
break;
case 4:
dayName = "Thursday";
break;
case 5:
dayName = "Friday";
break;
case 6:
dayName = "Saturday";
break;
case 7:
dayName = "Sunday";
break;
default:
dayName = "";
break;
}
return dayName;
}
}
/// <summary>
/// 使用 string 作为参数的索引指示器
/// </summary>
/// <param name="dayName"></param>
/// <returns></returns>
public int this[string dayName]
{
get
{
dayName = dayName.ToLower();
switch (dayName)
{
case "monday":
return 1;
case "tuesday":
return 2;
case "wednesday":
return 3;
case "thursday":
return 4;
case "friday":
return 5;
case "saturday":
return 6;
case "sunday":
return 7;
default:
return -1;
}
}
}
}
2. 使用方法
for (int i = 1; i <= myWeek.Length; i++)
{
Console.WriteLine(myWeek[i]);
}
string dayName;
for (int i = 1; i <= myWeek.Length; i++)
{
dayName = myWeek[i];
Console.WriteLine(myWeek[dayName].ToString());
}
3. 输出结果
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday
1
2
3
4
5
6
7
相关文章:实现 foreach 功能
本文地址:http://www.cnblogs.com/anjou/archive/2007/07/06/808206.html
C# 中实现索引指示器相关推荐
- C#學習基礎------事件和索引指示器
事件和索引指示器 事件為類和類的實例提供了向外界發送通知的能力,而索引指示器則可以像數組那樣對對像 進行索引訪問. 事件 形像地說,事件(event)就是類或對像用來"發出通知"的 ...
- android 自定义banner样式_Android中Banner的指示器自定义View
Banner是我们经常会遇到的一个功能,有很多是需要支持滑动是有个当前的指示器界面,一般如果为了图省事的方案可以用LinearLayout然后不断的在里面添加View,把背景通过shape来设置圆形. ...
- 如何在 bash 中使用索引数组
数组是一种数据结构,表示具有相同数据类型的对象集合.bash shell中支持两种类型的数组:关联数组或索引数组.在本文中,将演示如何在 bash 中使用索引数组.以下使用 shell 示例来说明索引 ...
- pandas使用drop函数删除dataframe中指定索引列表对应位置的数据行(drop multiple rows in dataframe with integer index)
pandas使用drop函数删除dataframe中指定索引列表对应位置的数据行(drop multiple rows in dataframe with integer index) 目录
- pandas中dataframe索引排序实战:pandas中dataframe索引降序排序、pandas中dataframe索引升序排序
pandas中dataframe索引排序实战:pandas中dataframe索引降序排序.pandas中dataframe索引升序排序 目录
- 获取当前元素在兄弟元素节点中的索引
第一种 <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8& ...
- 访问“ for”循环中的索引?
如何在如下所示的for循环中访问索引? ints = [8, 23, 45, 12, 78] for i in ints:print('item #{} = {}'.format(???, i)) 我 ...
- Xamarin XAML语言教程Xamarin.Forms中改变活动指示器颜色
Xamarin XAML语言教程Xamarin.Forms中改变活动指示器颜色 在图12.10~12.12中我们会看到在各个平台下活动指示器的颜色是不一样的.Android的活动指示器默认是深粉色的: ...
- Oracle中加速索引创建或重建的方法
Oracle中加速索引创建或重建的方法 View more documents from Maclean Liu
最新文章
- [图解]在输入框和文本框中获取和设置光标位置,以及选中文本和获取选中文本值的方法 --- 详解,兼容所有浏览器。...
- html5 像素人物,HTML5 Canvas 像素火焰 | 火苗
- boost::mpl模块实现insert相关的测试程序
- Java加个书名编号约束条件_java 按照题目所给变量名称、类型和方法名称进行编程 求帮助...
- .NET网站国际化策略
- 【网络流24题】No.4 魔术球问题 (二分+最小路径覆盖)
- SLAM++:面向对象的同时定位与建图系统(2013-CVPR)
- Java基础知识总结(2021版)
- IP地址作用与分类(A类 B类 C类 D类 E类)
- windows10 易升 下载失败 解决方法
- 访问github时出现隐私设置错误您的连接不是私密连接问题的解决方案
- Cat4模块SIM7600CE介绍
- 二进制优化(数独问题+有向图问题)
- Mysql中查询连续一段时间内统计数据
- autocomplete=“off“ 阻止chrome浏览器回填账号密码
- gif背景图html,CSS按钮及gif背景图片的运用
- 深度学习相关课程,MIT、李沐、吴恩达、
- 同事的评价:你的思维跳跃性太大!
- sqlserver数据库如何快速查看表结构sql
- PyQt5可视化编程-菜单和工具栏
热门文章
- Chrome无法打开文件的错误 [Not allowed to load local resource: file://XXXX]
- ECM之ucf session wait timeout【DFC_ACS_LOG_NO_NL】问题分析
- Teamcenter 开发中的一些问题
- gateway中的局部过滤器_vue 过滤器
- 使用计算机控制台方法,故障控制台使用方法
- mysql 检索操作时间段_postgresql数据库使用说明_实现时间范围查询
- android执行命令行取得结果,Android调用shell脚本并取得输出
- D. Little Artem and Dance
- span标签的取值与赋值
- Vue ---- 指令