当前位置: 首页 > 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…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望

文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例&#xff1a;使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例&#xff1a;使用OpenAI GPT-3进…...

java 实现excel文件转pdf | 无水印 | 无限制

文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...

为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?

在建筑行业&#xff0c;项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升&#xff0c;传统的管理模式已经难以满足现代工程的需求。过去&#xff0c;许多企业依赖手工记录、口头沟通和分散的信息管理&#xff0c;导致效率低下、成本失控、风险频发。例如&#…...

拉力测试cuda pytorch 把 4070显卡拉满

import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试&#xff0c;通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小&#xff0c;增大可提高计算复杂度duration: 测试持续时间&#xff08;秒&…...

QT: `long long` 类型转换为 `QString` 2025.6.5

在 Qt 中&#xff0c;将 long long 类型转换为 QString 可以通过以下两种常用方法实现&#xff1a; 方法 1&#xff1a;使用 QString::number() 直接调用 QString 的静态方法 number()&#xff0c;将数值转换为字符串&#xff1a; long long value 1234567890123456789LL; …...

python执行测试用例,allure报乱码且未成功生成报告

allure执行测试用例时显示乱码&#xff1a;‘allure’ &#xfffd;&#xfffd;&#xfffd;&#xfffd;&#xfffd;ڲ&#xfffd;&#xfffd;&#xfffd;&#xfffd;ⲿ&#xfffd;&#xfffd;&#xfffd;Ҳ&#xfffd;&#xfffd;&#xfffd;ǿ&#xfffd;&am…...

Fabric V2.5 通用溯源系统——增加图片上传与下载功能

fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...

代码随想录刷题day30

1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币&#xff0c;另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额&#xff0c;返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...

Java编程之桥接模式

定义 桥接模式&#xff08;Bridge Pattern&#xff09;属于结构型设计模式&#xff0c;它的核心意图是将抽象部分与实现部分分离&#xff0c;使它们可以独立地变化。这种模式通过组合关系来替代继承关系&#xff0c;从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...

【笔记】WSL 中 Rust 安装与测试完整记录

#工作记录 WSL 中 Rust 安装与测试完整记录 1. 运行环境 系统&#xff1a;Ubuntu 24.04 LTS (WSL2)架构&#xff1a;x86_64 (GNU/Linux)Rust 版本&#xff1a;rustc 1.87.0 (2025-05-09)Cargo 版本&#xff1a;cargo 1.87.0 (2025-05-06) 2. 安装 Rust 2.1 使用 Rust 官方安…...