C#学习笔记——值类型

using System;
 
namespace ValueType
{
    class Program
    {
        /// <summary>
        /// 类似Java中的“/**”注释
        /// </summary>
        /// <param name=" args "></param>
        static void Main( string [] args)
        {
            //C#有三种数据类型:值类型、引用类型和指针类型
            //值类型 直接存储在栈上面
            Console .WriteLine( "C#有三种数据类型:值类型、引用类型和指针类型\n值类型 直接存储在栈上面\n\nint类型示例:" );
            int i = 0; //int只是别名,正式写法为System.Int32, 按F12可以查看定义区
            Console .WriteLine( "i = " + i + ", i的类型:" + i.GetType());
            System. Int32 i2 = 0;
            Console .WriteLine( "int i等价于System.Int32 i" );
            Console .WriteLine( "i2 = " + i2 + ", i2的类型:" + i2.GetType());
            Console .WriteLine(i2);
 
            Console .WriteLine( "\nboolean类型示例" );
            bool aBooleanType = true ; //变量命名方法同Java
            Console .WriteLine( "输出布尔真:" + aBooleanType + ", 输出类型:" + aBooleanType.GetType());
 
            //struct类型,及调用方式
            Console .WriteLine( "\nstruct类型示例:" );
            Person person = new Person ();
            person.age = 10;
            Console .WriteLine( "使用person.age = 10;来给person的age属性赋值" );
            Console .WriteLine( "输出person.age:" + person.age);
 
            Console .WriteLine( "\nenum类型示例:" );
            Console .WriteLine( "Days.Monday = " + Days .Monday);
            var day = Days .Sunday; //定义任何类型的变量都可以用var来代替,这样就可以在定义时不去管它是什么类型,在用到的时候该变量会自动变成对应的类型
            Console .WriteLine( "Days.Sunday = " + day);
            Console .WriteLine( "Days.Sunday默认值:" + ( int )day + "(int)" );
            //枚举类默认是从0开始的,也可以通过设置Monday = 1来设置从1开始
            Console .WriteLine( "Days1.Sunday = " + Days1 .Sunday);
            Console .WriteLine( "可以通过设置Monday = 1来设置从1开始\nDays1.Sunday默认值:" + ( byte ) Days1 .Sunday + "(byte)" );
            Console .ReadLine();
 
            /*这些值类型都继承于System.ValueType,System.ValueType又继承于System.Object类
            System.Object所有的类都会继承于System.Object*/
        }
       
        /*struct类示例
        用来打包封装一个小的数据集,在里面可以像class一样实现方法、事件。*/
        struct Person
        {
            //顺便介绍四大访问修饰符
            public int age; //public访问修饰符 对外可见到
            public string name; //private访问修饰符
            public string firstName; //internal访问修饰符 命名空间内可见
            public string lastName; //protected访问修饰符 只有其继承类可见
        }
 
        /*enum枚举类型示例
        用来限定变量的一个取值范围
        例如这里限定了天这个变量只可能有周一到周日这七个值*/
        enum Days { Monday, Tuesday, Wenesday, Thursday, Friday, Saturday, Sunday} //默认是整数类型的,也可以在定义时加入":"改变它的类型,例如改成byte类型:
        enum Days1 : byte { Monday = 1, Tuesday, Wenesday, Thursday, Friday, Saturday, Sunday } //默认是从0开始的,也可以通过设置Monday=1来设置从1开始
    }
}

执行结果

转载于:https://www.cnblogs.com/CrazyBun/p/5338228.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值