C#学习之路-类型转换

news/2024/11/24 11:01:09/

类型转换从根本上说是类型铸造,或者说是把数据从一种类型转换为另一种类型。

C# 中的类型转换可以分为两种:隐式转换和显式转换。

隐式类型转换

隐式转换是指将一个较小范围的数据类型转换为较大范围的数据类型时,编译器会自动完成类型转换,这些转换是 C# 默认的以安全方式进行的转换, 不会导致数据丢失。

例如,从小的整数类型转换为大的整数类型,从派生类转换为基类。将一个 byte 类型的变量赋值给 int 类型的变量,编译器会自动将 byte 类型转换为 int 类型,不需要显示转换。

byte b = 10;
int i = b; // 隐式转换,不需要显式转换

显式转换

显式类型转换,即强制类型转换。

显式转换是指将一个较大范围的数据类型转换为较小范围的数据类型时,或者将一个对象类型转换为另一个对象类型时,需要使用强制类型转换符号进行显示转换,强制转换会造成数据丢失。

例如,将一个 int 类型的变量赋值给 byte 类型的变量,需要显示转换。

int i = 10;
byte b = (byte)i; // 显式转换,需要使用强制类型转换符号
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace TypeConversionApplication
{internal class ExplicitConversion{static void Main(string[] args){double d = 56894.45;int i;// 强制转换double为inti = (int)d;Console.WriteLine(i);Console.ReadKey();}}
}

 C# 类型转换方法

 class StringConversion{static void Main(string[] args){int i = 75;float f = 53.005f;double d = 2345.7652;bool b = true;Console.WriteLine(i.ToString());Console.WriteLine(f.ToString());Console.WriteLine(d.ToString());Console.WriteLine(b.ToString());Console.ReadKey();}}

 在进行类型转换时需要注意以下几点:

  • 隐式转换只能将较小范围的数据类型转换为较大范围的数据类型,不能将较大范围的数据类型转换为较小范围的数据类型;
  • 显式转换可能会导致数据丢失或精度降低,需要进行数据类型的兼容性检查;
  • 对于对象类型的转换,需要进行类型转换的兼容性检查和类型转换的安全性检查。

http://www.ppmy.cn/news/777842.html

相关文章

视频编码fmpeg 常用命令汇总

转自 kingvon_liwei  part 1: 经常用到ffmpeg 做一些视频数据的处理转换等,用来做测试,今天总结了一下,参考了网上部分朋友的经验,一起在这里汇总了一下,有需要的朋友可以收藏测试一下&am…

Window Mobile视频会议程序的开发

本文来自:http://hi.baidu.com/yuanzb/blog/item/c7eb57edc83d71d6b31cb1d5.html 适用平台 Pocket PC 2003 Phone Edition Windows Mobile 2003/SE Windows Mobile 5.0 开发工具 Microsoft Embedded Visual C 4.0 Microsoft Visual Studio 2005 及适用于各平台的SDK…

【正点原子FPGA连载】 第三十二章基于lwip的TCP服务器性能测试实验 摘自【正点原子】DFZU2EG_4EV MPSoC之嵌入式Vitis开发指南

第三十二章基于lwip的TCP服务器性能测试实验 上一章的lwip Echo Server实验让我们对lwip有一个基本的了解,而Echo Server是基于TCP协议的。TCP协议是为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议。本章我们将了解lwip tcp协议的使用并…

Windows下实现Mencoder+FFMPEG视频转换和截图的功能

Mencoder是Mplayer自带的编码工具(Mplayer是Linux下的播放器,开源,支持几乎所有视频格式的播放,现在有windows和Mac版本)。 Mplayer的获得与配置: Mplayer windows版本下载列表:http://www5.mp…

flv在线录制、视频转换网站开发文档

原贴:http://www.1hao8.com/show.asp?id7316 flv在线录制、视频转换网站开发文档 Mencoder简介: Mencoder是Mplayer自带的编码工具(Mplayer是Linux下的播放器,开源,支持几乎所有视频格式的播放,现在有wi…

【换脸软件DFL2.0官方使用手册详解】

换脸软件DFL2.0官方使用手册详解 前景提要2.0主要新增功能硬件要求文件目录术语解释 具体过程1,工作区清理2,从src视频中提取画面 (data_src.mp4)3,视频切割 (可选环节)4,从目标视频中提取画面(data_dst.mp…

15条常用的视频音频编辑脚本命令

mencoder -ss 6:06 -endpos 9:25 -oac pcm -ovc copy 1352796759.mp4 -o wineGarden.avi oac:音频 ovc copy 视频 不想看mencoder/ffmpeg详细技术手册的,可以把它当快速简易参考看,主要的功能有: 视频格式转换音频格式转换切割视频…

windows server 2012 流媒体服务器搭建(直播与点播)

IIS Live Smooth Streaming(实时平滑流式处理)是微软下一代流媒体解决方案。该技术是在IIS web中集成媒体传输平台IIS media services,实现利用标准 HTTP Web 技术以及高级 Silverlight 功能,确保在互联上传输质量最佳、播放流畅音…