当前位置: 首页 > news >正文

C#1115变量

变量

值类型

枚举

 //枚举aenumt emumt2 = enumt.OK;//获取枚举变量的值int val = (int)emumt2;//int o = 1;//获取枚举名称string oname = Enum.GetName(typeof(enumt),o);//根据值获取枚举对象enumt otype= (enumt)Enum.Parse(typeof(enumt), o.ToString());//根据枚举名称获取枚举对象enumt otype2 = (enumt)Enum.Parse(typeof(enumt), oname);//获取枚举名称数组string[] names = Enum.GetNames(typeof(enumt));//获取枚举值数组var values = Enum.GetValues(typeof(enumt));

结构体

在这里插入图片描述

public struct Student{public int id;public string name;public int age;public void GetStudent(){Console.WriteLine("id=" + id+",name=?"+name+",age="+age);}public Student(int id, string name, int age){this.id = id;this.name = name;this.age = age;}}
static void Main(string[] args)
{//结构体对象//无参构造Student student = new Student();student.id = 2;student.name = "xiaoli";student.age = 12;student.GetStudent();//带参构造Student student1 = new Student(3,"XIAOZHAO",21);student1.GetStudent();}

引用类型

 //引用类型不存储数据值,存储引用//1个变量改变内存值 都变//string Dynamic Object int value2 = 123;object ol = value2;//装箱int intol = (int)ol;//拆箱 //Dynamic 可存储任何类型//程序运行时进行类型检查,和对象类型不同dynamic na = "ss";dynamic num1 = 222;dynamic ll = false;//string string na1 = "ss";string path = "d:\\document\\imgs";string path1 = @"d:\document\imgs";//null 空引用//null 与 ""区别 ""会分配存储空间,长度为0 而null不会。//""等价于 string.Empty 修正 实际值一样

隐式转换

//隐式类型转换 从小变大 从派生类到基类,数据不丢失

           //隐式类型转换 从小变大 从派生类到基类short shortnum=23;int intnum = shortnum;long longnum = intnum;float floatnum = 3.6f;double doublenum = floatnum;float floatnum2 = intnum;double doublenum2 = intnum;decimal decnum = longnum;

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

// decimal decnum=doublenum /double/float类型不能隐式转换为decimal
decimal decnum = doublenum;

在这里插入图片描述

显式转换

type(num)

 //显式类型转换//强转 大转小 浮点转整 字符串转值 可能数据丢失double doublenumq = 3.56;int intnumq = (int)doublenumq;

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

type.Parse(string)字符串类型转换为值类型

        //type.Parse(string)string stringnum = "222.2";float floatnumq = float.Parse(stringnum);string stringDec = "222.32";decimal decimalnum = decimal.Parse(stringDec);}
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
c#的值类型在这里插入图片描述
引用类型:C# 中内置的引用类型包括 Object(对象)、Dynamic(动态)和 string(字符串)。

 //string str = "22.31";int intnum3 = 0;bool result = int.TryParse(str, out intnum3);string strnum = "32.3";result = float.TryParse(strnum, out float floatnums);

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

            //无法转换也不报错 type.TryParse(string,out type变量)string str = "22.31";int intnum3 = 0;//小数无法转换为intbool result = int.TryParse(str, out intnum3);//无法转换//如果成功,转换成功str 失败 falsestring strnum = "32.3";result = float.TryParse(strnum, out float floatnums);//convert.ToType(value) 一种类型转换为指定类型object oNum = 120;byte byteNum = Convert.ToByte(oNum);string strNum = "23123";int intNum = Convert.ToInt32(strNum);bool boolValue = false;string stringBoval = boolValue.ToString();double doubleV = 322.21;float floatV = Convert.ToSingle(doubleV);  }}
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

运算符

算数运算符

  //算数运算符int a = 30,b = 15;int c = a + b;int d = a - b;int e = a * b;int f = a / b;int g = a % b;int a1 = a++;int b2 = --b;Console.WriteLine($"a={a},b={b},c={c},d={d},e={e},f={f},g={g},a1={a1},b2={b2}"); 

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

关系运算符

== >= <= < > !=

            int ax=15,bx=2;bool sx = ax == bx;bool sx2 = ax != bx;bool sx3 = ax > bx;bool sx4 = ax < bx;bool sx5 = ax >= bx;Console.WriteLine($"sx={sx},sx2={sx2},sx3={sx3},sx4={sx4},sx5={sx5}");

在这里插入图片描述

逻辑运算符

&& || !

int al = 12, bl = 2, cl = 23, dl = 32;
bool rel1 = al > bl;
bool rel2 = al < bl;
bool rel3 = rel1 && rel2;
bool rel4 = cl >= dl;
bool rel5 = rel4 || rel3;
Console.WriteLine($"rel1={rel1},rel2={rel2},rel3={rel3},rel4={rel4},rel5={rel5}");

在这里插入图片描述

位运算符

| & ~ ^
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

赋值运算符

            //赋值运算符int af = 30;int bf = 10;bf += af;Console.WriteLine($"bf={bf}");bf -= 6;Console.WriteLine($"bf={bf}");bf *= 2;Console.WriteLine($"bf={bf}");bf /= 2;Console.WriteLine($"bf={bf}");bf %= 10;Console.WriteLine($"af={af},bf={bf}");int cf = 4;//100 cf <<= 1;//1000=8Console.WriteLine(cf);cf >>= 1;int df = 5;df &= 2;//5=101 2=010//101 & 020 =000Console.WriteLine($"cf={cf},df={df}");int ef = 6;ef ^= 4;// ef=110 4=100//110 ^ 100=010;2 按位异或 相同为0 不同为1Console.WriteLine($"ef={ef}");int ff = 31;ff |= 32;//ff 10000-1=01111//32 10000//01111 | 10000 = 11111=63Console.WriteLine($"ff={ff}");}}

在这里插入图片描述
在这里插入图片描述

其他运算符

sizeof

 int intSize = sizeof(int);int floatSize = sizeof(float);int decimalSize = sizeof(decimal);int enumSize = sizeof(enumt);int charSize = sizeof(char);Console.WriteLine($"intsize={intSize},floatS={floatSize}," +$"decimalS={decimalSize},enumS={enumSize},charS={charSize}");

在这里插入图片描述

typeof

//typeof
Type typeInt=typeof(int);
Type typeStri=typeof(string);Type typefloat=typeof(float);Type typeDecimal=typeof(decimal);Type typeEnum=typeof(enumt);Type types = typeof(Student);Console.WriteLine("typeint:" + typeInt + ",typestr:" + typeStri+",typefloat:"+typefloat+",typeDe:"+typeDecimal+"typeEnum:"+typeEnum+"typestudent:"+types);

在这里插入图片描述

条件?A:B

//?:三目运算符
int asan = 21;
string peopleAge = asan < 18 ? "child" : "adult";
Console.WriteLine("people:" + peopleAge);

在这里插入图片描述

is

 //is object ai = 22;bool si = ai is int;Console.WriteLine("ai=?int:"+si);

在这里插入图片描述

as

//int intobj=(int)obj;  // 错误:字符串不能直接强制转换为int
//int intobj2 = obj as int;  // 错误:as运算符不能用于值类型

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

运算符优先级

  int ay = 5;int by = 4, cy = 6;int dy = ay + by * cy;//dy=5+4*6=5+24=29;int ey = by > cy ? 1 : 0;//ey=4>6 x =0int fy = (ay + by) * cy - dy;//fy=9*6-29=26 25int gy = ++ay + by * (ay - by);//6+4*(1)=10 //6+4*2=14bool hy = (ay > by) || (cy > by); //true || true =trueConsole.WriteLine("dy:"+dy+",ey:"+ey+",fy:"+fy+",gy:"+gy+",hy:"+hy);

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

http://www.dtcms.com/a/614173.html

相关文章:

  • 钓鱼网站排名假冒建设银行最多wordpress停止更新
  • 思维链(CoT)的本质:无需架构调整,仅靠提示工程激活大模型推理能力
  • 【CUDO云服务器】基本配置
  • 光明新区做网站网站的风格保持一致
  • 信创时代下,PHP/MySQL应用的平滑迁移与运维管理升级(AI整理)
  • 网站开发费用投入情况网页设计需要学什么书
  • JDBC 入门详解(附工具类与防 SQL 注入)
  • 公司网站改版设计汽车之家这样的网站怎么做
  • 【网络编程】TCP/IP网络概述
  • 网页和站点的区别上海网站高端
  • 【C++开发面经】全过程面试问题详解
  • 【前端学习】前端高频面试场景题
  • 解决在虚拟机的ensp中启动路由器,卡0%且出现虚拟机卡死的方法
  • 网站开发项目策划书手机前端开发软件工具
  • 宁波教师巧用3D技术,打造互动几何课堂:动态观察正方体组合,让空间想象触手可及
  • Amazon VPC中Web应用无法连接数据库的安全组配置问题分析与修复
  • C++ 模板进阶:解锁泛型编程的高级玩法
  • STM32F407 GPIO深度解析:从底层架构到实战应用
  • 网站开发读什么专业做百度推广一定要有自已网站
  • 家政服务网站建设方案电商网站开发需求文档
  • SVN服务器修改ip后无法连接
  • 如何申请一个免费的网站空间建网站的意义
  • 【LeetCode刷题】和为K的子数组
  • 网站建设教程免费下载电脑平面设计软件
  • BuildingAI 二开 平台配置菜单和页面功能PRD
  • OFDM、IQ调制与AxC技术介绍
  • Linux快速安装java运行环境
  • div嵌套影响网站收录wordpress后台模版
  • 【工具】BatteryInfoView
  • RGB 颜色值与十六进制颜色码相互转换工具