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

【C#】类型转换-显式转换:括号强转、Parse法、Convert法、其他类型转string

目录

一、括号强转

1.有符号整型

2.无符号整型

3.浮点之间

4.无符号和有符号

5.浮点和整型

6.char和数值类型 

7.bool和string是不能够通过 括号强转的

二、Parse法

1.有符号

2.无符号

3.浮点型

4.特殊类型

三、Convert法

1.转字符串

 2.转浮点型

3.特殊类型转换

4.每一个类型都存在对应的 Convert中的方法

四、其他类型转string

1.所有其他类型的数据

2.当我们进行字符串拼接时,就自动会调用 tostring 转成string


一、括号强转

 主要用于数值之间,低精度转高精度,如byte转为int。

  • 作用:一般情况下 将高精度的类型强制转换为低精度
  • 语法:变量类型 变量名=(变量类型)变量;
  • 注意:精度问题 范围问题

1.有符号整型

 short sb = 1;short s = 1;int i = 1;long l = 1;s = (short)i;Console.WriteLine(s);i = (int)1;sb = (sbyte)s;sb = (sbyte)i;sb = (sbyte)l;

2.无符号整型

byte b = 1;
uint ui = 1;
b = (byte)ui;

3.浮点之间

float f = 1.1f;
double d = 1.1234567890123456789f;f = (float)d;Console.WriteLine(f);

4.无符号和有符号

 uint ui2 = 1;int i2 = 1;//在强转时 一定要注意范围 不然得到的结构 可能有异常ui2 = (uint)i2;Console.WriteLine(ui2);i2 = (int)ui2;

5.浮点和整型

//浮点数强转成整型时 会直接抛弃掉小数点后面的小数
i2 = (int)1.24f;
Console.WriteLine(i2);

6.char和数值类型 

i2 = 'A';
char c = (char)i2;
Console.WriteLine(c);

7.bool和string是不能够通过 括号强转的

//bool bo = true;
//int i3 = (bool)bo;//string str="123";
//i3=(int)str;

:所有和数值有关的都支持低精度的去存储高精度的(用括号强转的方式)

二、Parse法

主要用来把字符串转为数值。

  •  作用:把字符串转换为对应的类型
  •  语法:变量类型.Parse("字符串)
  •  注意:字符串必须能够转换成对应类型(合法合规)否则报错

1.有符号

int i4 = int.Parse("123");
Console.WriteLine(i4);//我们填写字符串 必须是要能够转换成对应类型的字符串,如果不合规范,报错
//i4 = int.Parse("123.45");//
//值得范围 必须是能够倍变量存储的值 否则报错
//short s3 = short.Parse("40000");
//console.writeLine(s3);

2.无符号

//无符号
Console.WriteLine(byte.Parse("1"));
Console.WriteLine(ushort.Parse("1"));
Console.WriteLine(ulong.Parse("1"));
Console.WriteLine(uint.Parse("1"));

3.浮点型

 //浮点型float f3 = float.Parse("1.2323");double d3 = double.Parse("1.2323");

4.特殊类型

//bool和char类型转化为string类型
bool b5 = bool.Parse("true");
Console.WriteLine(b5);
char c2 = char.Parse("A");
Console.WriteLine(c2);

:Parse法用来将string字符串类型转换为对应的类型,要注意的是:我们填写的字符串类型必须是合法合规的,不然会报错

三、Convert法

更全面的转换方式,精度更高,可以把各种类型的数据转为各种类型

  •  作用  更具体的将 各个类型之间相互转换
  •  语法:Convert.To目标类型(变量或常量)
  •  注意:填写的变量或常量必须正确 否则出错

1.转字符串

如果是把字符串转成对应类型 那字符串一定要合法合规

int a = Convert.ToInt32("12");
Console.WriteLine(a);

 2.转浮点型

// 精度比括号强转好一点,会四舍五入
a = Convert.ToInt32(1.65845f);
Console.WriteLine(a);//2

3.特殊类型转换

//把bool类型也可以转成 数值类型 true对应1 false对应0
a = Convert.ToInt32(true);
Console.WriteLine(a);
a = Convert.ToInt32(false);
Console.WriteLine(a);a = Convert.ToInt32('A');Console.WriteLine(a)

4.每一个类型都存在对应的 Convert中的方法

//每一个类型都存在对应的 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);Console.WriteLine(sb5);
Console.WriteLine(i5);
Console.WriteLine(l5);
Console.WriteLine(b6);
Console.WriteLine(us5);
Console.WriteLine(ui5);
Console.WriteLine(ul5);
Console.WriteLine(f5);
Console.WriteLine(d5);
Console.WriteLine(de5);
Console.WriteLine(bo5);
Console.WriteLine(c5);
Console.WriteLine(str5);

四、其他类型转string

可以把所有其他类型的数据通过.string方式转换为string类型

  • 作用:拼接打印
  • 语法:变量.tostring();

1.所有其他类型的数据

string str6 = 1.ToString();
Console.WriteLine(str6);
str6 = true.ToString();
Console.WriteLine(str6);
str6 = 'A'.ToString();
Console.WriteLine(str6);
str6 = 1.2f.ToString();
Console.WriteLine(str6);int aa = 1;
str6 = aa.ToString();
Console.WriteLine(aa);
bool bo6 = true;
str6 = bo6.ToString();
Console.WriteLine(bo6);

2.当我们进行字符串拼接时,就自动会调用 tostring 转成string

Console.WriteLine("123123" + 1 + true);str6 = "123123" + 1 + true + 1.23;

相关文章:

【C#】类型转换-显式转换:括号强转、Parse法、Convert法、其他类型转string

目录 一、括号强转 1.有符号整型 2.无符号整型 3.浮点之间 4.无符号和有符号 5.浮点和整型 6.char和数值类型 7.bool和string是不能够通过 括号强转的 二、Parse法 1.有符号 2.无符号 3.浮点型 4.特殊类型 三、Convert法 1.转字符串 2.转浮点型 3.特殊类型转换…...

【智能家居】4、智能家居框架设计和代码文件工程建立

目录 一、智能家居项目框架 二、智能家居工厂模式示意 三、代码文件工程建立 SourceInsight创建新工程步骤 一、智能家居项目框架 二、智能家居工厂模式示意 三、代码文件工程建立 创建一个名为si的文件夹用于保存SourceInsight生成的文件信息,然后在SourceInsig…...

【GAN】数据增强基础知识

最近要用到,但是一点基础都没有,故开个文章记录一下笔记 目录 GAN DCGAN WGAN EEGGAN GAN 参考 生成对抗网络(GAN) - 知乎 (zhihu.com) 文章 [1406.2661] Generative Adversarial Networks (arxiv.org) 代码 GitHub - …...

Skywalking流程分析_3(服务的准备、启动、关闭)

前文将SkyWalkingAgent.premain中的: SnifferConfigInitializer.initializeCoreConfig(agentArgs)pluginFinder new PluginFinder(new PluginBootstrap().loadPlugins())这两个方法分析完毕,下面继续分析premain方法其余部分 创建byteBuddy final By…...

mysql中的各种日志文件redo log、undo log和binlog

mysql中的各种日志文件redo log、undo log和binlog mysql中的各种日志文件redo log、undo log和binlog1.MySQL日志文件类型2.redo log日志2.1 作用2.2工作原理:2.3详解 3.undo log日志4.binlog日志5.总结 mysql中的各种日志文件redo log、undo log和binlog 1.MySQL…...

【电视剧-长相思】经典语录

小编看了这么长时间的电视剧,突然感觉摘抄经典语录最有成就感,嘿嘿,下面是我在《长相思》(第一季)中感觉好的一些语录,语录是乱序排列哈 玟小六:我怕寂寞,寻不到长久的相依&#xff…...

串口通信原理及应用

Content 1. 前言介绍2. 连接方式3. 数据帧格式4. 代码编写 1. 前言介绍 串口通信是一种设备间非常常用的串行接口,以比特位的形式发送或接收数据,由于成本很低,容易使用,工程师经常使用这种方式来调试 MCU。 串口通信应用广泛&a…...

python爬取穷游网景点评论

爬取穷游网的景点评论数据,使用selenium爬取edge浏览器的网页文本数据。 同程的评论数据还是比较好爬取,不像大众点评需要你登录验证杂七杂八的,只需要找准你想要爬取的网页链接就能拿到想要的文本数据。 这里就不得不提一下爬取过程中遇到的…...

Phar 文件上传以及反序列化

1.phar反序列化 触发条件: 1、能将phar文件上传 2、可利用函数 stat、fileatime、filectime、file_exists、file_get_contents、file_put_contents、file、filegroup、fopen、fileinode、filemtime、fileowner、fileperms、is_dir、is_executable、is_file、is_link…...

面试其他注意事项

面试其他注意事项 一、面试反问 这个岗位的日常工作和主要职责是什么?咱们这边主要负责什么业务,用到了哪些技术呢?对于我们校招生有没有培养体系呢?脱产培训,还是边工作边熟悉?会有导师带嘛?…...

sklearn 笔记 BallTree/KD Tree

由NearestNeighbors类包装 1 主要使用方法 sklearn.neighbors.BallTree(X, leaf_size40, metricminkowski, **kwargs) X数据集中的点数leaf_size改变 leaf_size 不会影响查询的结果,但可以显著影响查询的速度和构建树所需的内存metric用于距离计算的度量。默认为…...

ConstraintLayout使用详解

作为一名程序员,可能会经历以下难受的事情: 解决难以调试的代码错误处理复杂的代码库和维护遗留代码修改已经存在很长时间的代码,需要考虑兼容性和稳定性长时间工作,缺乏身体运动和社交互动,导致压力和孤独感遇到不能…...

Java8Stream快速使用

将List集合存入流中 List<String> list new ArrayList<>();list.add("张一");list.add("张二");list.add("张三");list.add("李四");list.add("赵五");list.add("张六");list.add("王八"…...

work环境配置

1.计算机右键找到属性 2.配置环境变量 3.新加环境变量 4.修改环境变量path .bat文件内容 php ApplicationsChatstart_register.php ApplicationsChatstart_gateway.php ApplicationsChatstart_businessworker.php pause...

Flutter应用-使用sqflite升级数据库

文章目录 问题描述具体做法代码示例更多条件限制升级 数据库迁移和备份简介数据库迁移数据库备份 问题描述 使用fluttter开发的应用程序发布后&#xff0c;发现数据库有些设计不合理。如何来更新数据库呢&#xff1f; 使用sqflite来处理数据库&#xff0c;但是第一版软件发布后…...

集群搭建(redis7)

一、主从复制(replica)&#xff08;不推荐&#xff09; 介绍 主从复制 mmaster以写为主&#xff0c;slave以读为主当master数据变化时&#xff0c;自动将新的数据异步同步到其他slave数据库 读写分离down机恢复数据备份水平扩容支撑高并发 基本操作 配从不配主 权限细节 maste…...

高能分享:软件测试十大必问面试题(附带答案)

1 介绍之前负责的项目 参考答案&#xff1a;先大概描述一下这个项目是做什么的&#xff08;主要功能&#xff09;&#xff0c;包括哪些模块&#xff0c;是什么架构的&#xff08;B/S、C/S、移动端&#xff1f;&#xff09;&#xff0c;你在其中负责哪些模块的测试。期间经历了几…...

Java 反射设置List属性

使用 Java 反射可以动态地设置对象的属性值&#xff0c;包括 List 类型的属性。以下是一个示例代码&#xff0c;演示如何通过反射设置 List 类型的属性&#xff1a; 假设有一个类 Person&#xff0c;包含一个 List 类型的属性 names&#xff1a; java public class Person { …...

wpf devexpress Property Grid创建属性定义

WPF Property Grid控件使用属性定义定义如何做和显示 本教程示范如何绑定WP Property Grid控件到数据和创建属性定义。 执行如下步骤 第一步-创建属性定义 添加PropertyGridControl组件到项目。 打开工具箱在vs&#xff0c;定位到DX.23.1: Data 面板&#xff0c;选择Prope…...

78.子集--77.组合

78&#xff0c;子集 递归 class Solution(object):def subsets(self, nums):""":type nums: List[int]:rtype: List[List[int]]"""# 结果ans[]# 临时结果dp_[]def dfs(nums,index):if indexlen(nums):# 保存结果co_dpdp_[:]ans.append(co_dp)r…...

调用支付宝接口响应40004 SYSTEM_ERROR问题排查

在对接支付宝API的时候&#xff0c;遇到了一些问题&#xff0c;记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...

Java 语言特性(面试系列1)

一、面向对象编程 1. 封装&#xff08;Encapsulation&#xff09; 定义&#xff1a;将数据&#xff08;属性&#xff09;和操作数据的方法绑定在一起&#xff0c;通过访问控制符&#xff08;private、protected、public&#xff09;隐藏内部实现细节。示例&#xff1a; public …...

ffmpeg(四):滤镜命令

FFmpeg 的滤镜命令是用于音视频处理中的强大工具&#xff0c;可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下&#xff1a; ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜&#xff1a; ffmpeg…...

Qt Http Server模块功能及架构

Qt Http Server 是 Qt 6.0 中引入的一个新模块&#xff0c;它提供了一个轻量级的 HTTP 服务器实现&#xff0c;主要用于构建基于 HTTP 的应用程序和服务。 功能介绍&#xff1a; 主要功能 HTTP服务器功能&#xff1a; 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...

c#开发AI模型对话

AI模型 前面已经介绍了一般AI模型本地部署&#xff0c;直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型&#xff0c;但是目前国内可能使用不多&#xff0c;至少实践例子很少看见。开发训练模型就不介绍了&am…...

mac 安装homebrew (nvm 及git)

mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用&#xff1a; 方法一&#xff1a;使用 Homebrew 安装 Git&#xff08;推荐&#xff09; 步骤如下&#xff1a;打开终端&#xff08;Terminal.app&#xff09; 1.安装 Homebrew…...

【JVM】Java虚拟机(二)——垃圾回收

目录 一、如何判断对象可以回收 &#xff08;一&#xff09;引用计数法 &#xff08;二&#xff09;可达性分析算法 二、垃圾回收算法 &#xff08;一&#xff09;标记清除 &#xff08;二&#xff09;标记整理 &#xff08;三&#xff09;复制 &#xff08;四&#xff…...

【Android】Android 开发 ADB 常用指令

查看当前连接的设备 adb devices 连接设备 adb connect 设备IP 断开已连接的设备 adb disconnect 设备IP 安装应用 adb install 安装包的路径 卸载应用 adb uninstall 应用包名 查看已安装的应用包名 adb shell pm list packages 查看已安装的第三方应用包名 adb shell pm list…...

BLEU评分:机器翻译质量评估的黄金标准

BLEU评分&#xff1a;机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域&#xff0c;衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标&#xff0c;自2002年由IBM的Kishore Papineni等人提出以来&#xff0c;…...

MySQL 索引底层结构揭秘:B-Tree 与 B+Tree 的区别与应用

文章目录 一、背景知识&#xff1a;什么是 B-Tree 和 BTree&#xff1f; B-Tree&#xff08;平衡多路查找树&#xff09; BTree&#xff08;B-Tree 的变种&#xff09; 二、结构对比&#xff1a;一张图看懂 三、为什么 MySQL InnoDB 选择 BTree&#xff1f; 1. 范围查询更快 2…...