栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > .Net

C#---第二课:字符串的拼接 & @符号 & 数据类型的转换(Convert、TryParse)

.Net 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C#---第二课:字符串的拼接 & @符号 & 数据类型的转换(Convert、TryParse)

文章目录
  • 1. 字符串的拼接
      • (1) 字符串 与变量通过加号(+)拼接
      • (2) 字符串里面使用占位符
  • 2. 接收输入内容并打印
  • 3. @符号的作用
      • (1)保留原始的文件目录
      • (2)按照原始字符串的样式输出
  • 4. 数据类型的转换
      • (1)小的数据类型转换为大的数据类型
      • (2)大的数据类型转换为小的数据类型
      • (3)两个int类型的数据计算结果还是int类型
      • (4)如何将两个int类型计算的结果转为小数呢?
      • (5)不兼容数据类型的转换ToInt32、ToDouble
      • (6)不确定两个数据类型是否兼容--TryParse



1. 字符串的拼接 (1) 字符串 与变量通过加号(+)拼接
string name = "Alien";
int age = 18;
decimal salary = 66666;
char level = 'A';


Console.WriteLine("my name is " + name + "i am " + age + " years old , salary is " + salary + ", and the level of C# is " + level);


Console.ReadKey();




(2) 字符串里面使用占位符
string name = "Alien";
int age = 18;
decimal salary = 66666;
char level = 'A';


Console.WriteLine("my name is {0}, i am {1} years old , salary is {2}, and the level of C# is {3}", name, age, salary, level);


Console.ReadKey();


最终的结果如下:

my name is Alien, i am 18 years old , salary is 66666, and the level of C# is A



2. 接收输入内容并打印
Console.WriteLine("请输入您的姓名?");
string name = Console.ReadLine();			// 可以接收在控制台输入的内容,并赋值给name变量

Console.WriteLine("您的姓名是:{0}", name);
Console.ReadKey();


注意:


Console.ReadLine()只能通过字符串或字符接收!!!


不能通过int 、double接收!!!



3. @符号的作用 (1)保留原始的文件目录

string text = "一个高尚的人,一个脱离了低级趣味的人......";

// 添加@符号,表明按照原始的意思输出和使用目录地址
System.IO.File.WriteAllText(@"C:UsersAlienDesktoptemp.txt", text);

// 如果不用@,需要将每个再转义一下,\代表原始的一个
// System.IO.File.WriteAllText("C:\Users\Alien\Desktop\temp.txt", text);


Console.WriteLine("写入成功!");
Console.ReadKey();

  • 原始本地桌面没有temp文件,以上执行完之后,会将text的字符串写入到文件中


(2)按照原始字符串的样式输出
string text = @"一个高尚的人,一个存粹的人,
                一个有道德的人, 一个脱离了低级趣味的人......";

System.IO.File.WriteAllText(@"C:UsersAlienDesktoptemp.txt", text);
Console.WriteLine("写入成功!");
Console.ReadKey();



4. 数据类型的转换

(1)小的数据类型转换为大的数据类型

小的数据类型指的是取值范围小的数据,去转换为取值范围更大的数据,这个可以直接转换,或者叫隐式转换

int num = 10;

double num_2 = num * 0.88; 

Console.WriteLine("转义之后的数:{0}", num_2);

Console.ReadKey();


// 转义之后的数:8.8



(2)大的数据类型转换为小的数据类型

强制转换的时候,需要将被转换的数据前面添加一个数据类型符号(最终需要的数据类型)

double num  = 666.6;

int num_2 = (int)num;

Console.WriteLine("转义之后的数:{0}", num_2);

Console.ReadKey();


// 转义之后的数:666



(3)两个int类型的数据计算结果还是int类型
int num = 10;
int div = 3;


int num_new = num / div;			//  两个int类型的数据,无论是加减乘除,最终得到的都是int类型的数据
Console.WriteLine("最终的数据为:{0}", num_new);


double result = num / div;			// 最终还是打印整形数字,只是有个隐式转换
Console.WriteLine("最终的数据为:{0}", result);

Console.ReadKey();



(4)如何将两个int类型计算的结果转为小数呢?
int num = 10;
int div = 3;

// 此处其实是将分子 num 的int类型,转换为了double类型,最终分子是double、分母是int类型
double result = num*1.0 / div;
Console.WriteLine("最终的数据为:{0}", result);

Console.ReadKey();


// 最终的数据为:3.33333333333

double num = 10;
int div = 3;


double result = num / div;
Console.WriteLine("最终的数据为:{0:0.000}", result);		//冒号后面为最终需要的小数位样式

Console.ReadKey();


// 最终的数据为:3.333


(5)不兼容数据类型的转换ToInt32、ToDouble
string num = "123456";

double number = Convert.ToDouble(num);
int num2 = Convert.ToInt32(num);

Console.WriteLine("最终转换的double数据为:{0}", number);
Console.WriteLine("最终转换的int数据为:{0}", num2);
Console.WriteLine("");


Console.ReadKey();


// 最终转换的double数据为:123456
// 最终转换的int数据为:123456




(6)不确定两个数据类型是否兼容–TryParse
  • 当两个数据转换类型的时候,如果不确定是否兼容、是否能转换成功,为了避免错误,需要有个函数对是否能成功转换做一个判断,TryParse可以解决此问题!!!
  • int.TryParse
  • double.TryParse
  • decimal.TryParse

①转换错误的时候?

int number = 0;
bool b = int.TryParse("123abc", out number);	// 将字符串"123abc"转换为int类型
Console.WriteLine(b);							// 无法转换,则b为False
Console.WriteLine(number);						// 因无法转换,则number被赋值为0



// False
// 0


②转换正确的时候?

int number = 0;
bool b = int.TryParse("123", out number);	// 可以转换,则正常把number转为int 123
Console.WriteLine(b);						// b则是True,代表可以转换
Console.WriteLine(number);					
 

// True
// 123

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1023860.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号