广告
返回顶部
首页 > 资讯 > 精选 >C#数据类型转换有哪些
  • 536
分享到

C#数据类型转换有哪些

2023-06-26 06:06:23 536人浏览 独家记忆
摘要

本篇内容介绍了“C#数据类型转换有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!C# 的类型转换有显式转型 和 隐式转型 两种方式。显式

本篇内容介绍了“C#数据类型转换有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

C# 的类型转换有显式转型 和 隐式转型 两种方式。

  • 显式转型:有可能引发异常、精确度丢失及其他问题的转换方式。需要使用手段进行转换操作。

  • 隐式转型:不会改变原有数据精确度、引发异常,不会发生任何问题的转换方式。由系统自动转换。

不同类型的数据进行操作(加减乘除赋值等等),是需要进行 类型转换 后,才能继续操作。所以需要“类型转换”。

隐式转型

隐式转型容易理解,当两种或多种数据类型进行某种操作时,不需要干预,系统会自动进行隐式转换。

int i = 66666;long b = i;    //转为 long 类型后为 b 赋值

通常情况下,多种 值类型 进行计算时,系统会自动进行隐式转型,并且总是转为范围更大的数据类型,并且不会发生精确度变化、数字大小变化等等。

C#数据类型转换有哪些

C#数据类型转换有哪些

显式转型

问题是,但你需要把一个 long 类型的数据转成 int 时,又或者让 string 与 int 互转,当数据小数点太多时,这时候就必须使用显式转型。

在继续下列教程前,要想说明一点。

char 是整型!

虽然char存储的是字符而不是数字,但它的确是整型,翻回上面看一下图,可以发现。

也就是说,char是可以参与算术运算的。但并不是直接参与,而是char的基础值。c# 中的char值是基于Unicode的。通过Unicode,任意字符都可以解释成数字。

一,使用 ([type]) 转型操作符

此方法适用与值类型转换( string属于引用类型)

在需要转换的变量前加上( [类型] )即可

请仔细观察下面两图的差异

C#数据类型转换有哪些

C#数据类型转换有哪些

第二张图中的代码中,第二行,为 int b = (int)i;

在需要转换的变量前使用 ([type]) 这种格式进行转换,如(int)、(float)、(long)

注意,

此种方法只能对值类型数据进行转换。

不应将范围大的类型 往 小 转换 或 将浮点型转为整形,不能将超范围的往小了转。

例如 float 转为 int,精确度会被自动丢失

C#数据类型转换有哪些

输出 666

将大于其类型范围的数给它时,会发生溢出。

C#数据类型转换有哪些

char 可以直接跟 int 或 long 使用。

int a ='1' + '3';  //小转大char b = (char)a;  //大转小
int c = 'a' + '5';  //char可以直接转为 int
注意上下例子的不同 ,int 直接转为char,会报错

C#数据类型转换有哪些

第二,[Type].Parse()

([type]) 方法是无法在值类型、引用类型( string 类型)间转换的。

但每种数据类型都提供一个Parse()方法,它允许把字符串转成对应的 数值类型。

int.Parse()

float.Parse()

请看例子

string str = "666";long i = int.Parse(str);Console.WriteLine($"{i},{i.GetType()}");Console.ReadKey();

(图如)

C#数据类型转换有哪些

注意,

Parse() 是专为 string 类型转成 值类型 提供功能的!

Parse() 是为符合数字格式的 string 类型进行转换!

下面的例子都是错误用法 !

Parse() 是将符合数字格式的字符串转为数字,也就是说,

  • ( )括号内的必须为字符串 !

  • 字符串的内容必须为数字 !

例子 1 ( ) 括号内的内容不是字符串

C#数据类型转换有哪些

例子 2 变量 str 的内容不是 有效数字格式

C#数据类型转换有哪些

第三,[Type].TryParse()

格式如下

  • int.TryParse()

  • float.TryParse()

.TryParse()与.Parse()相似,但是使用形式不太一样,

[类型].TryParse(要更改的字符串,out 存储到哪个变量); 

最重要的不同点在于,.TryParse() 在转换失败时,不会引发异常,而是返回 flase

例子

        string str = "666";        int i;        bool b = int.TryParse(str,out i);    //接收转换结果或者         string str = "666";        int i;        int.TryParse(str,out i);    //不接收转换结果

如果你不知道 out 的使用,请查阅C#中的out参数/ref参数/params可变参数

第四,System.Convert

方法例子

System.Convert.ToSingle();

System.Convert.ToInt32();

System.Convert.ToDouble();

System.Convert 允许将一种类型转为另一种类型。

常见 类型列表: char、sbyte、short、int、long、uint、ulong、float、double、decimal、string、bool ... ...

但是,同样需要格式支持!

string str = "666";int a= System.Convert.ToInt32(str);        //正确 string str = "666.66";int a= System.Convert.ToInt32(str);        //报错 int a = 66666;bool c = System.Convert.ToBoolean(a);        //正确 string str = "666.66";bool c = System.Convert.ToBoolean(str);        //报错

System.Convert 在转换是也需要注意 格式 才能转换成功。

同样,此方式也会发生精确度、数字大小改变

C#数据类型转换有哪些

第五,System.Convert

.Tostring()

每种数据类型都提供了转为字符串类型的方法 ToString()

无论是值类型还是DateTime 等各种引用类型。

ToString()使用方法最为简单,请留意下列例子的红色背景部分

using System;using System.io;public class Test{    static void Main()    {        int a = 666;        string aa = a.ToString();        Console.WriteLine($"{aa}");        float b = 666.666F;        string bb = b.ToString();        Console.WriteLine($"{bb}");        DateTime c = DateTime.Now;        string cc = c.ToString();        Console.WriteLine($"{cc}");        FileInfo d = new FileInfo("E:\\test.txt");        string dd = d.ToString();        Console.WriteLine($"{dd}");        string ee;        try        {            int x = 1;            int y = 0;            int e = x / y;        }        catch (Exception ex)        {            ee = ex.ToString();            Console.WriteLine($"{ee}");        }        Console.ReadKey();    }}

看到了吧?无论什么类型,只需在后面加上 ToString() , 都能 输出 string 类型的内容。(不是转为 string 类型!)

当然,ToString() 是一个方法,并提供了 一下传入参数,每种类型都有几个重载的 TOString() 方法,例如DateTime的

public string ToString(string fORMat, IFormatProvider provider);public string ToString(string format);public string ToString(IFormatProvider provider);public override string ToString();

其它方面不再赘述。

复制下列代码到控制台,看看输出了什么

using System;using System.IO;public class Test{    static void Main()    {        int a = 666;        string aa = a.ToString();        Console.WriteLine($"{aa}");        float b = 666.666F;        string bb = b.ToString();        Console.WriteLine($"{bb}");        DateTime c = DateTime.Now;        string cc = c.ToString();        Console.WriteLine($"{cc}");        FileInfo d = new FileInfo("E:\\test.txt");        string dd = d.ToString();        Console.WriteLine($"{dd}");        string ee;        try        {            int x = 1;            int y = 0;            int e = x / y;        }        catch (Exception ex)        {            ee = ex.ToString();            Console.WriteLine($"{ee}");        }        Console.ReadKey();    }}

“C#数据类型转换有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: C#数据类型转换有哪些

本文链接: https://www.lsjlt.com/news/307273.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C#数据类型转换有哪些
    本篇内容介绍了“C#数据类型转换有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!C# 的类型转换有显式转型 和 隐式转型 两种方式。显式...
    99+
    2023-06-26
  • c++强制转换数据类型的方法有哪些
    在C++中,有以下几种强制转换数据类型的方法:1. 静态转换(static_cast):用于基本数据类型之间的转换,以及具有继承关系...
    99+
    2023-10-18
    c++
  • c语言数据类型转换的方法有哪些
    在C语言中,数据类型转换有以下几种方法:1. 隐式转换:当两个不同类型的数据进行运算或赋值时,编译器会自动进行隐式转换。2. 显式转...
    99+
    2023-10-10
    c语言
  • C# 数据类型转换
    目录前言相关介绍一、函数方法二、类型转换[1]. 使用Convert转换[2]. 使用类型名进行转换总结前言 在使用Console.Read()或Console.ReadLine(...
    99+
    2022-11-12
  • Python数据类型转换函数有哪些
    Python数据类型转换函数有:1、int()函数;2、float()函数;3、str()函数;4、list()函数;5、tuple()函数;6、dict()函数;7、set()函数;8、bytes()函数;9、complex()函数。详细...
    99+
    2023-12-12
    数据类型转换函数
  • C#的类型转换方法有哪些
    这篇“C#的类型转换方法有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C#的类型转换方法有哪些”文章吧。C# 类型转换...
    99+
    2023-06-17
  • C#类型转换的形式有哪些
    本篇内容介绍了“C#类型转换的形式有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!类型转换从根本上说是类型铸造,或者说是把数据从一种类型...
    99+
    2023-06-15
  • php数据类型转换方式有哪些
    在PHP中,可以使用以下方式进行数据类型转换:1. 强制类型转换:使用类型转换运算符(例如 (int)、(float)、(strin...
    99+
    2023-05-13
    php数据类型转换 php
  • Python数据类型转换方式有哪些
    这篇文章主要介绍“Python数据类型转换方式有哪些”,在日常操作中,相信很多人在Python数据类型转换方式有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python数据类型转换方式有哪些”的疑惑有所...
    99+
    2023-06-25
  • c#中的类型转换方式有哪些
    在C#中,有以下几种类型转换方式:1. 隐式类型转换:当目标类型的范围大于源类型时,可以进行隐式类型转换。例如,将int类型的值赋给...
    99+
    2023-08-09
    c#
  • C++中类型转换的方法有哪些
    这篇文章主要介绍“C++中类型转换的方法有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“C++中类型转换的方法有哪些”文章能帮助大家解决问题。1. C语言中的类型转换在C语言中,如果赋值运算符左...
    99+
    2023-07-05
  • php类型转换函数有哪些
    在Web开发中,我们经常需要对不同的数据类型进行转换处理。比如将字符串转化为整数、浮点数,把日期转化为时间戳等。这些转化操作在PHP中都可以通过内置函数实现。本文将介绍PHP中常用的转化函数。一、整型转换函数intval(): 把一个变量转...
    99+
    2023-05-14
    php
  • python类型转换函数有哪些
    python中的类型转换函数:1.int()函数,将一个字符串或数字转换为整型;2.float()函数,将整数和字符串转换成浮点数;3.str()函数,将对象转化为字符串;python中常用的类型转换函数有以下几种int()函数int()函...
    99+
    2022-10-18
  • numpy转换数据类型的方法有哪些
    numpy转换数据类型的方法有:1、astype()方法,用于将数组转换为指定的数据类型,接受一个参数,即要转换为的数据类型;2、view()方法,创建一个新的数组对象,该对象与原始数组共享相同的数据;3、asarray()函数,可以将数组...
    99+
    2023-11-22
    numpy python
  • PostgreSQL的数据类型转换规则有哪些
    这篇文章主要介绍“PostgreSQL的数据类型转换规则有哪些”,在日常操作中,相信很多人在PostgreSQL的数据类型转换规则有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大...
    99+
    2022-10-18
  • php数据类型转换的方法有哪些
    这篇文章主要介绍php数据类型转换的方法有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!数据一共有三种转换类型,分别是强制转换,永久转换,以及转换函数转换。第一种、强制转换通过强制转换的数据,不影响数据原本的类型...
    99+
    2023-06-14
  • Python中的数据类型转换函数有哪些?
    Python是一种强大的编程语言,提供了丰富的数据类型转换函数,方便我们在不同数据类型之间进行转换。本文将介绍Python中常用的数据类型转换函数,并提供相应的代码示例。int()函数:int()函数用于将一个数字或字符串转换为整数。它可以...
    99+
    2023-10-22
    函数 转换 数据类型转换函数:Python
  • php有哪些数据类型转换函数方法
    这篇文章主要介绍“php有哪些数据类型转换函数方法”,在日常操作中,相信很多人在php有哪些数据类型转换函数方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php有哪些数据类型转换函数方法”的疑惑有所帮助!...
    99+
    2023-06-20
  • C语言基础的类型转换有哪些
    小编给大家分享一下C语言基础的类型转换有哪些,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!类型转换数据有不同的类型,不同类型数据之间进行混合运算时必然涉及到类型的转换问题。转换包括隐式类型转换和强制类型转换。类型转换的原则...
    99+
    2023-06-25
  • C++强制类型转换的方式有哪些
    本篇内容主要讲解“C++强制类型转换的方式有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C++强制类型转换的方式有哪些”吧!1 C++类型转换本质1.1 自动类型转换(隐式)利用编译器内置...
    99+
    2023-06-30
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作