C#入门:简单数据类型和强制类型转换

news/2024/7/23 23:25:18 标签: unity, 游戏, 设计模式

本文由 简悦 SimpRead 转码, 原文地址 mp.weixin.qq.com

本期来讲讲 unity 的脚本语言 —C#,C# 的简单数据类型及范围和强制类型转化的方法。这可是 unity 游戏开发必备技能。

1. 简单数据类型

各个类型的范围:

byte -> System.Byte

(字节型,占 1 字节,表示 8 位正整数,范围 0 ~ 255)

ushort -> System.UInt16

(无符号短整型,占 2 字节,表示 16 位无符号整数,范围 0 ~ 65,535)

uint -> System.UInt32

(无符号整型,占 4 字节,表示 32 位无符号整数,范围 0 ~ 4,294,967,295)

ulong -> System.UInt64

(无符号长整型,占 8 字节, 表示 64 位无符号整数,范围 0 ~ 大约 10 的 20 次方)

sbyte -> System.SByte

(带符号字节型,占 1 字节,表示 8 位整数,范围 -128 ~ 127)

short -> System.Int16

(短整型,占 2 字节,表示 16 位整数,范围 -32,768 ~ 32,767)

int -> System.Int32

(整型,占 4 字节,表示 32 位整数,范围 -2,147,483,648 到 2,147,483,647)

long -> System.Int64

(长整型,占 8 字节, 表示 64 位有符号整数,范围大约 -(10 的 19) 次方 到 10 的 19 次方)

float -> System.Single

(单精度浮点型,占 4 个字节,范围(-3.40282347E+38F 到 3.40282347E+38F)

double -> System.Double

(双精度浮点型,占 8 个字节,范围(-1.7976931348623157E+308,1.7976931348623157E+308)

decimal->System.Decimal(表示十进制数,占 16 个字节)

bool -> System.Boolean

(布尔型,其值为 true 或者 false)

char -> System.Char

(字符型,占有两个字节,表示 1 个 Unicode 字符)

string -> System.String

(字符串型,表示一系列 Unicode 字符的不可变序列)

2. 强制转换

2.1 括号法

在变量前加上 (类型)

int num;
char c='A';
num=(int)c;

注意范围,超出范围会异常,正数变负数

bool 和 string 不能和其他类型进行强制转换

2.2 Parse 法

把字符串转化为对应的类型

语法:

变量类型. Parse(“字符串”);

int num=int.Parse("123");

注意:字符串必须能够转换成对应类型并且范围要符合,否则报错

2.3 Convert 类法

更准确的对各个类型进行转换, 会四舍五入

语法:

Convert.To 目标类型 (变量或常量)

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

a=Convert.ToInt32(1.5556f);//a变成2,会四舍五入
a=Convert.ToInt32(true);//a变成1
//以下是其他类型的示例
sbyte sb=Convert.ToSByte("1");
short s=Convert.ToInt16("1");
int i=Convert.ToInt32("1");
long l=Convert.ToInt64("1");

byte b=Convert.ToByte("1");
ushort us=Convert.ToUInt16("1");
uint ui=Convert.ToUInt32("1");
ulong ul=Convert.ToUInt64("1");

float f=Convert.ToSingle("13.4");
double d=COnvert.ToDouble("13.4");
decimal de=Convert.ToDecimal("13.4");

bool bo=Convert.ToBoolean("true");
char c=Convert.ToChar("A");

string str=Convert.ToString(1000);

2.4 其他类型转换为 string

语法:

变量. ToString();

string str=1.ToString();
str='A'.ToString();
int a=20;
str=a.ToString();//str为"20"

http://www.niftyadmin.cn/n/5411825.html

相关文章

前端面试拼图-原理源码

摘要:最近,看了下慕课2周刷完n道面试题,记录下... 1. JS内存泄漏如何检测?场景有哪些? 1.1 垃圾回收 GC 垃圾回收是一种自动管理内存的机制,它负责在运行时跟踪内存的分配和使用情况,并在不再需要的对象…

滑窗问题【Leetcode3最长子串/438找出所有异位词】

3. 无重复字符的最长子串 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 请注意,你的答案必须是 子串 的长度,子序列不是子串。 思路:滑窗范围[pl, pr),用cnt数组维护滑窗内的每个字符的出现次数…

webpack5基础--07_自动清空上次打包资源

自动清空上次打包资源 1. 配置 const path require("path");module.exports {entry: "./src/main.js",output: {path: path.resolve(__dirname, "dist"),filename: "static/js/main.js",clean: true, // 自动将上次打包目录资源清…

设计模式-享元模式实践案例

享元模式(Flyweight Pattern)是一种结构型设计模式,其核心思想是通过共享技术来有效地支持大量细粒度对象的复用,减少创建对象的数量,以节省系统资源,特别是内存。 以下是一个使用 Java 实现享元模式的实践…

用python实现使用ES检索PDF或Word等格式文件方案

使用Elasticsearch(ES)来检索PDF或Word等格式的文件,通常涉及以下步骤: 文件预处理:将PDF或Word文件转换为文本格式,这样ES可以对其进行索引。索引文档:将提取的文本内容索引到ES中。查询&…

利用GPT开发应用001:GPT基础知识及LLM发展

文章目录 一、惊艳的GPT二、大语言模型LLMs三、自然语言处理NLP四、大语言模型LLM发展 一、惊艳的GPT 想象一下,您可以与计算机的交流速度与与朋友交流一样快。那会是什么样子?您可以创建哪些应用程序?这正是OpenAI正在助力构建的世界&#x…

中国化学机械抛光(CMP)技术行业需求潜力及应用趋势预测报告2024-2 475081《出版时

中国化学机械抛光(CMP)技术行业需求潜力及应用趋势预测报告2024-2030年 《报告编号》: BG475081 《出版时间》: 2024年3月 《出版机构》: 中智正业研究院 《交付方式》: EMIL电子版或特快专递 《报告价格》:【纸质版】: 6500元 【电子版】: 6800元 【纸质电子】: 7000元 《 免…

鸿蒙NEXT开发实战:【视频文件裁剪】

使用OpenHarmony系统提供的ffmpeg三方库的能力在系统中实现了音视频文件裁剪的功能,并通过NAPI提供给上层应用调用。 基础信息 视频文件裁剪 简介 在OpenHarmony系统整个框架中有很多子系统,其中多媒体子系统是OpenHarmony比较重要的一个子系统&#…