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

类型转换之显式转换

显式转换——>手动处理,强制转换

括号强转

作用:一般情况下,将高精度的类型转换为低精度。
语法:变量类型 变量名 = (变量类型)变量;
注意:精度问题,范围问题。
括号强转,可能会出现范围问题,造成的异常。
附上代码:

//相同大类的整形
//有符号整形
sbyte sb = 1;
short s = 1;
int i = 1;
long l = 1;s = (short)i;
Console.WriteLine(s);i = (int)l;
sb = (sbyte)s;
sb = (sbyte)i;
sb = (sbyte)l;//无符号整形
byte b = 1;
uint ui = 1;
b = (byte)ui;//浮点之间
float f = 1.1f;
double d = 1.23456;f = (float)d;
Console.WriteLine(f);//无符号和有符号
uint ui2 = 1;
int i2 = 1;
//在强转时,一定要注意范围,不然得到的结果,可能有异常
ui2 = (uint)i2;
Console.WriteLine(ui2);i2 = (int)ui2;//浮点和整形,浮点数强转成整形时,会直接抛弃掉小数点后面的小数
i2 = (int)1.64f;
Console.WriteLine(i2);//char和数值类型
i2 = 'A';char c = (char)i2;
Console.WriteLine(c);//bool和string是不能够通过括号强转的//bool bo = false;
//int i3 = (bool)bo;//string str = "123";
//i3 = (int)str;

Parse法

作用:把字符串类型转换为对应的类型
语法:变量类型.Parse(“字符串”)
注意:字符串必须能够转换成对应类型,否则报错。
附上代码;

//有符号
//string str2 = "123";
int i4 = int.Parse("123");
Console.WriteLine(i4);
//我们填写字符串,必须是要能够转成对应类型的字符,如果不符合规则,会报错
//i4 = int.Parse("123.45");//err
//Console.WriteLine(i4);
//值的范围,必须是能够被变量存储的值,否则报错
//short s3 = short.Parse("40000");//err
//Console.WriteLine(s3);sbyte sb3 = sbyte.Parse("1");
Console.WriteLine(sb3);
//它们的意思是相同的
Console.WriteLine(sbyte.Parse("1"));
Console.WriteLine(long.Parse("123123"));//无符号
Console.WriteLine(byte.Parse("1"));
Console.WriteLine(ushort.Parse("1"));
Console.WriteLine(ulong.Parse("1"));
Console.WriteLine(uint.Parse("1"));//浮点数
float f3 = float.Parse("1.2345");
double d3 = double.Parse("1.2312");//特殊类型
bool b5 = bool.Parse("true");
Console.WriteLine(b5);char c2 = char.Parse("A");
Console.WriteLine(c2);

Convert法

作用:更准确的将各个类型之间进行相互转换。
语法:Convert.To目标类型(变量或常量)
注意:填写的变量或常量必须正确,否则出错。
附上代码:

//转字符串,如果是把字符串转成对应类型,那字符一定要合法合规。
int a = Convert.ToInt32("12");
Console.WriteLine(a);//精度更准确
//精度比括号强转好一点,会四舍五入
a = Convert.ToInt32(1.45845f);
Console.WriteLine(a);//特殊类型转换
//把bool类型也可以转换成数值类型,true对应1,false对应0
a = Convert.ToInt32(true);
Console.WriteLine(a);
Console.WriteLine(Convert.ToInt32(false));a = Convert.ToInt32('A');
Console.WriteLine(a);//每一个类型都存在对应的Convert中的方法
sbyte sb5 = Convert.ToSByte("1");
short s5 = Convert.ToInt16("1");
int i5 = Convert.ToInt32("1");
long l5 = Convert.ToInt64("1");byte b6 = Convert.ToByte("1");
ushort us5 = Convert.ToUInt16("1");
uint ui5 = Convert.ToUInt32("1");
ulong ul5 = Convert.ToUInt64("1");float f5 = Convert.ToSingle("13.2");
double d5 = Convert.ToDouble("13.2");
decimal de5 = Convert.ToDecimal("13.2");bool bo5 = Convert.ToBoolean("true");
char c5 = Convert.ToChar("A");string str5 = Convert.ToString(123123);

其他类型转string

作用:拼接打印
语法:变量.string();
附上代码:

string str6 = 1.ToString();
str6 = true.ToString();
str6 = 'A'.ToString();
str6 = 1.2f.ToString();int aa = 1;
str5 = aa.ToString();
bool bo6 = true;
str6 = bo6.ToString();//当我们进行字符串拼接时,就会自动调用tostring转成string
Console.WriteLine("123" + 1 + true);str6 = "123456" + true + 1.23f;
http://www.lryc.cn/news/355411.html

相关文章:

  • Mybatis多表查询,报错:Column ‘id‘ in field list is ambiguous
  • PyCharm面板ctrl+鼠标滚轮放大缩小代码
  • 【Qt】数据库(一)SQLITE创建、增删查改
  • 【模拟面试问答】力扣165题:比较版本号(逐个比较与双指针法详解及模拟面试问答)
  • 用PhpStudy在本地电脑搭建WordPress网站教程(2024版)
  • 高中数学:平面向量-题型总结及解题思路梳理
  • 【玩转google云】Google Cloud Platform (GCP) (WAF)详解
  • 前端开发工程师——数据可视化
  • 【代码随想录训练营】【Day 35】【贪心-2】| Leetcode 122, 55, 45
  • 【深度学习】ultralytics, yolo seg,实例分割图绘制,核对yolo seg 的txt标记对不对
  • 如何保证员工在精益变革中始终保持积极的态度?
  • 【Java面试】三、Redis篇(下)
  • GpuMall智算云:QwenLM/Qwen1.5/Qwen1.5-7B-Chat
  • CentOS6.5 下编译 FreeSWITCH 1.2.23 版本
  • 2024年03月 Python(三级)真题解析#中国电子学会#全国青少年软件编程等级考试
  • Redis篇 数据的编码方式和单线程模型
  • (delphi11最新学习资料) Object Pascal 学习笔记---第13章第4节 (内存管理和接口)
  • 【记录贴】docker镜像格式报错
  • 设计模式 19 模板模式 Template Pattern
  • PHP如何实现实时计算使用者消耗服务器资源费用?
  • 在C++中自定义命名空间,在命名空间中定义string变量,同时定义一个函数实现单词逆置
  • 【leetcode 141】环形链表——快慢指针(龟兔赛跑)
  • 容器(Container)的详细介绍
  • Python 网格变换之平移、旋转、缩放、变换矩阵
  • 推荐10款优秀的组件库(一)
  • freertos的信号量和互斥锁学习笔记
  • C++基础——vector的详解与运用
  • const指针,星号判断方法
  • 移动摄像头专网需要解vlan,如何解决
  • 5.27周报