C#基础学习(加油版)

控制台字体颜色和背景设置

 static void Main(string[] args)
        {
            //修改控制台
            Console.BackgroundColor = ConsoleColor.Green;//单独是这样子只有字体的背景颜色发生了变化
            Console.ForegroundColor = ConsoleColor.Red;//设置字体的颜色
            Console.Clear();//清除控制台信息
            Console.WriteLine("Hello World");
            string ss =  Console.ReadLine();
            Console.WriteLine($"message: {ss}");//格式化字符串输出
            Console.WriteLine("message {0}",ss);//格式化字符串输出
            Console.ReadKey();

        }

入口类

C#基础学习(加油版)_第1张图片

目录结构 

C#基础学习(加油版)_第2张图片

 

 

引用里面有支持项目的程序集

项目的配置文件

App.config

项目的入口类

Program.cs

C#基本语法

C#基础学习(加油版)_第3张图片

数据类型

 

C#基础学习(加油版)_第4张图片

 

C#基础学习(加油版)_第5张图片

Class是引用类型

小数点类型默认是双精度浮点型

C#基础学习(加油版)_第6张图片

结构体类型

C#基础学习(加油版)_第7张图片

结构体可以有够着函数,但是不能有析构函数

命名规则要首字母大写

第一节课程练习

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _02数据类型
{
    class Program
    {
        static void Main(string[] args)
        {
            var money = 10.2;//默认类型是double双精度浮点型
            //单精度浮点型不能直接这样子
            //float num = 10.1;//这样子会报错
            //要这样子
            float num = 10.2f;
            float num1 = 10.2F;
            //双精度浮点型默认是不带后缀的,使用后缀的话就要这样子
            double dou = 1024.123d;
            double dou2 = 1024.123D;
            double dou1 = 1024.123d;
            //十进制,可以带小数点也可以不带小数点,精确的   (这种)
            decimal de = 10.2m;
            decimal de1 = 10.2M;
            Console.WriteLine("decimal的大小为:" + sizeof(decimal) + "个字节");
            //子类型
            DateTime dt = DateTime.Now;
            Console.WriteLine("当前的时间为:" + dt.ToString());
            //Nullable 可空类型
            Nullable a = 10;//相当于 int?  这种除了int所表达的类型的范围之外,还可以有NULL
            //int c = null;//这样子会报错,null是引用类型的默认值,int的默认值是0
            a = null;//这样子就是可以   
            int? a1 = 10;
            bool bl = false;
            //枚举类型也是值类型

            Sex m_sex = Sex.Female;
            Console.WriteLine(m_sex);//显示的是字符类型,常量

            int sex = (int)Sex.Female; //枚举转换成为整形
            //转换成为字符串
            string strsesx = m_sex.ToString();
            //将int类型转换成为枚举类型
            Sex sex1 = (Sex)0;//将int类型转换成为枚举类型
            //获取枚举中的常量名称数组  Enum是一个枚举类
            string[] str1 = Enum.GetNames(typeof(Sex));//得到的是名称的数组
            for (int i = 0; i < str1.Length; i++)
                Console.WriteLine(str1[i]);
            //获取枚举中的值
            Array array = Enum.GetValues(typeof(Sex));
            for (int i = 0; i < array.Length; i++)
                Console.WriteLine((int)array.GetValue(i));
            Console.WriteLine(str1);
            //不使用new方式来实例化
            StudentInfo stu;
            stu.Stuage = 10;
            stu.StuName = "Zh";
            stu.show();
            //使用new方式来实例化
            StudentInfo stu1 = new StudentInfo(22, "Zh1");
            stu1.StuName = "zh";
            stu1.show();
            Console.ReadKey();
        }
    }
    /// 
    ///枚举类型
    /// 
    enum Sex
    {
        Male,
        Female
    }
   
    //定义一个结构体 ,结构体不能继承结构体或者是1类,但是能实现接口
    struct StudentInfo: intf
    {
        //有参够着

        //不能显示定义无参构造函数
        //public StudentInfo() { }//这样子是错误的
        public int Stuage;//不能赋初值
        //public string StuName { get; set; }//{ get; set; }自动 属性封装  //这个是属性,与C++中的成员有所不同
        public string StuName;
        public void show()
        {
            Console.WriteLine("年龄:{0} 姓名{1}", Stuage, StuName);
        }
        public StudentInfo(int _age, string _StuName)
        {
            this.StuName = _StuName;
            this.Stuage = _age;
        }
      
    }
    interface intf
    {
        void show();//接口方法不能有权限修饰符
    }
}

 

你可能感兴趣的:(c#,学习,开发语言)