初学C#之变量、占位符、转义符、还有就是类型转换

㈠、定义变量

  • 先定义再赋值
int Num1;
Num1 = 10;
  • 定义的同时赋值
int age = 28;
  • 定义多个变量同时赋值,先决条件变量类型相同,例如:
string phome = "18912508888", name = "王大";
  • 定义变量时,数据类型后面添加“?”

在变量类型后面添加“?”表示可空值类型。例如:

int a = null;//出错提示:无法将null转换为"int",因为它是不可为null的值类型

但是写成以下格式就不会报错

int? a = null;

㈡字符串中“+”和占位符{}

  • 是数学中的加法运算:两变参与加法运算的数据类型为数字类型,则“+”便是数学上的加法的意义。
  • 是连接的意思:两边参与加号运算的数据,有一个是字符型,那么这个“+”号就是连接的意义。

占位符就是先占住一个固定的位置,等着你再往里面添加内容的符号。站位符由{数字}组成,数字由0开始编号。

第1个占位符:{0}

第2个占位符:{1}

第2个占位符:{2}

string name = "张三";
int age = 28;
decimal salary = 7600m;
//占位符{0}{1}{2}无顺序要求,可以在一句话中重复使用{0}代表第一个参数.
//重点:占位符的编号不能超过参数的总数减1个.超过报错
Console.WriteLine("我叫{0},今年{1}岁,我的工资{2}元", name, age, salary);

㈢转义符和“@”符号在字符串中的作用

常用的转义字符及其含义:
’     单引号
”     双引号
\     反斜杠

 

Console.WriteLine("E:\Program Files\火马游戏\GamePlaza.exe");

 


     空
a     警告(产生峰鸣)
     退格 // 就是键盘上Backspace功能,但是在字符窜末尾添加无效果。
f     换页
     换行

 

Console.WriteLine("煮豆燃豆萁,
豆在釜中泣.
本是同根生,
相煎何太急.");

 

 


     回车  //在字符串中添加 后面的字符将覆盖前面的字符

     水平制表符   //就是键盘的按Tab的效果
v     垂直制表符

@符号的作用:

  • 取消转义符号""在字符串中的转义作用.
  • 将字符串按照原格式输出
Console.WriteLine(@"E:Program Files火马游戏GamePlaza.exe");

㈣数据类型隐式转换

所谓隐式转换,就是系统默认的转换,其本质是小存储容量数据类型自动转换为大存储容量数据类型。

比如:int (隐式转换)==>longfloatdoubledecimal

隐式数值转换表(C# 参考)

你猜猜下面的运算结果:

int a = 10, b = 3;
double quo = a / b;//结果:3

本来我以为是:3.333333。,但事实上结果是3.原因是参与运算的操作数(a、b)类型全部相同,其运算结果类型也与操作数的类型相同.然后赋值给quo变量变成了double类型。

其中操作数有一个是double类型其运算结果就是double类型。如下:

int a = 10, b = 3;
double quo = 1.0 * a / b; //结果3.3333。。。

㈣数据类型显示转换

方法1. 该转换方式主要用于数字类型之间的转换,从int类型向long,float,double,decimal 类型转换可以使用隐式转换,但从long型到int 就需要使用显示转换,即使用该类型的转换方式否则产生编译错误。

  该方式对于浮点数会无条件的舍去,会失去精确度

  对于char类型的到int类型的转换,传回的值是ASCII码

double pi = 3.1415926;
int r = 5;
double s = pi * Math.Pow(r, 2);//结果78.539815
int temp = (int)s;            //结果78.舍去了小数部分
char sex = 'n';
temp = (int)sex;             //结果110,可以转换单字母型

方法2。int.Parse(string 变量名)该方式是将数字内容的字符串转换为int类型,如果字符串的内容为Null ,则抛出ArgumentNullException异常;如果字符串内容不是数字,则抛出FormatException异常。

使用该方法只能处理字符串的内容,而且转换后的字符串内容要在int类型的可表示范围之内

string str1 = "3.1415926";
double dbla = double.Parse(str1);//结果:3.1415926
//int Num1 = int.Parse(str1); //语法没报错,启动时报错.提示字符串格式不正确.原因int.Parse只能转整型数值型字符串
int Num1 = (int)double.Parse(str1); //结果:3 分两步转换就可以了.
Console.WriteLine("dbla = {0} Num1 = {1}",dbla,Num1)

方法3.Convert.ToInt32 该方式不仅可以将字符串类型转换为int,还可以将其他的类型转换为int。变量若为object或string类型,当其值为Nul时,会传回0,不会造成程序错误,但是若此string类型的值为string.Empty,转换成int时,程序仍会出错。

string str1 = "3.1415926";
double dbla = Convert.ToDouble(str1);//结果:3.1415926

 

 

 

原文地址:https://www.cnblogs.com/tianxuan123/p/6998570.html