作业"/>
C#作业
开篇
内容介绍:C# 文档 - 入门、教程、参考。 | Microsoft Learn
作业内容:
• 根据定义的枚举,计算以下结果: • meetingDays 是星期一三五 • workingFromHomeDays 是星期四五 • 必须进行线上会议的哪几天? • 星期三是不是在家办公?先解决2个问题:
位标志是什么?
简单的说,位标志是使枚举类型的实例能够存储枚举器列表中定义的值的任何组合。在编程的时候,开发人员长期使用单个字的不同位作为表示一组开/关标志的紧凑方法,我们称这个单个字为标志字。
Flags特性?
想要使用位标志,就需要在枚举声明前使用Flags特性,它提供以下功能:1. 首先,Flags会告诉编译器等查看代码的工具,该枚举的成员不仅可以用作单独的值,还可以按位标志进行组合,这样编译器就可以适当的解释该枚举类型的变量;
2. 其次,它允许枚举的ToString方法为位标志得到值提供更多的格式化信息。ToString方法以一个枚举值为参数,将枚举值与常量成员进行比较,如果与某个成员相匹配,Tostring返回该成员的字符串名称。
参考源码(如有不足可指出)
namespace ConsoleApp1 {internal class Program{[Flags]//使用位标志特性public enum Days{None =0b_0000_0000,Monday = 0b_0000_0001,Tuesday = 0b_0000_0010,Wendesday = 0b_0000_0100,Thursday = 0b_0000_1000,Friday = 0b_0001_0000,Saturday = 0b_0010_0000,Sunday = 0b_0100_0000,Weekend=Saturday|Sunday}static void Main(string[] args){Days meetingDays= Days.Monday | Days.Wendesday|Days.Friday;//meetingDays是星期一三五Days workingFromHomeDays = Days.Thursday |Days.Friday;//workingFromHomeDays是星期四五Days mustlinemeetingDays =meetingDays&workingFromHomeDays;//必须进行线上会议的哪几天?Days x = workingFromHomeDays & Days.Wendesday;//星期三是不是在家办公?Console.WriteLine(meetingDays.ToString());//打印结果(使用利用Tostring输出位标志)Console.WriteLine( workingFromHomeDays.ToString());//打印结果(使用利用Tostring输出位标志)Console.WriteLine( mustlinemeetingDays.ToString());//打印结果(使用利用Tostring输出位标志)Console.WriteLine(x.ToString());//打印结果(使用利用Tostring输出位标志)}} }
运行结果截图:
最后:创作不易,请点赞!谢谢!
更多推荐
C#作业
发布评论