C# 变量数据类型的使用和案例(基础篇)

简介: C# 变量数据类型的使用和案例(基础篇)

什么是数据类型?

用来存储数据的,比如一个数字,或一行字,存储在内存中(不是硬盘),这些数据会随着程序的关闭而清空,并不会保存在本地,如不特意的输出,是看不见的!!一个程序里并不是变量也多越好,他们是占内存的,根据需要使用


C#的数据类型

类型 内存 数值范围
byte 1 -128 ~+127
sbyte 1 0 ~255
short 2 -32 768 ~+32 767
ushort 2 0~65 535
int 4 -2 147 483 648 ~ +2 147 483 647
uint 4 0~ 4 294 967 295
long 8 -9 223 372 036 854 775 808 ~ +9 223 372 036 854 775 807
ulog 8 0 ~ 18 446 744 073 709 551 615
char 2 所有Unicode编码
string 2 所有Unicode编码
bool 1 true(真)或false(假)
float 4 +1.5e-324 ~ +1.7e308(精度15位)
double 8 +5.05e-324~ +1.7e308(精度15位)
decimal 16 +1.0x10e-28~ +7.9x10e28(精度28位)

一共14个但是我们经常使用到只有五六个,分别是:

byte:字节(常用他的数组)

语法:byte a =100;

错误用法:byte a =130;

超出数值范围

int:代表整数

语法:int a = 100;

错误用法: int a =100.5;

只能表示整数,而且要在数值范围内

char:代表一个字

语法:char a =‘男’;

错误用法:char a =‘男的’;

这个类型只能赋值一个字,用的是单引号

string:代表字符串(一行字)

语法:string a ="小马哥的棺材板;

错误用法: string a =100.5;

字符串必须用双引号引起来

double:表示小数和整数

语法:double a =100.5;

double a =100;

错误用法: double a =“11”;

不是字符串类型不能使用双引号标识

这些是常用的吗,其他比较使用


在编写程序时经常需要计算一下东西,如金额,库存这些都是需要计算的,而计算就必须通过变量来计算一般使用int,或double(一般使用这个),如果不带小数就使用int

注意:字符串(string)(char)是不能进行任何运算的,一般用于显示字符!!

除了字符,不同类型也可以进行加减乘除运算,

byte a = 10;

int b = 100;

int num =a + b;

Console.WriteLine(num);

//结果是110

字符串是不能进行运算的,编译器将报错

string a = “10”;

int b = 10;

int num = a + b;

Console.WriteLine(num);

当然也是有解决办法的,那就是数据类型的转换

string a = “10”;

int b = 10;

int c =Convert.ToInt32(a);

int sum = b + c;

Console.WriteLine(sum);

把字符串转成int类型


定义了(string)多个字符串,怎么把他们连接成句话

string a = “小马哥的”;

string b = “棺材板”;

string c = “按不住了!!!”;

使他们变成一句话

方法一(单纯的输出)(脑血栓专用):

string a = “小马哥的”;

string b = “棺材板”;

string c = “按不住了!!!”;

string d = a + b + c;

Console.WriteLine(d);

+号:起到的只是一个连接字符的作用,并不是把他们加起来,只是连接的意思,在能进行运算的类型才是加减乘除

方法二(单纯的输出):

如果只是单纯的输出没必要在用一个新的变量去接收他,直接在输出语句使用+号进行连接

string a = “小马哥的”;

string b = “棺材板”;

string c = “按不住了!!!”;

Console.WriteLine(a+b+c);

一样的效果


上面演视的都是在代码写死了的,我们也可以接收用户从键盘输入的数字

接收用户输入并且连接一句话,在显示出来

Console.WriteLine(“输入第1个字”);

string a = Console.ReadLine();

Console.WriteLine(“输入第2个字”);

string b = Console.ReadLine();

Console.WriteLine(a+b);

用户输入2个数字,求数字的和

Console.WriteLine(“输入第1个字”);

double a = Convert.ToDouble(Console.ReadLine());

Console.WriteLine(“输入第2个字”);

double b = Convert.ToDouble(Console.ReadLine());

double num = a + b;

Console.WriteLine(“结果是:”+num) ;

用户有可能会输入小数,所以使用double类型


如果用户输的不是数字,输入了无效的字符,如汉字等,程序就把报错

使用的double进行接收的,而你进来的数据是string(字符串)类型的,

汉字不能运算,所以程序报错、

解决办法:

可以在代码进行异常的处理

try{}:程序正常执行

catch{}:如果在try代码里的代码出现异常,就执行catch块里代码

try {

Console.WriteLine(“输入第1个字”);

double a = Convert.ToDouble(Console.ReadLine());

Console.WriteLine(“输入第2个字”);

double b = Convert.ToDouble(Console.ReadLine());

double num = a + b;

Console.WriteLine(“结果是:” + num);

Console.Read();

}

catch {

Console.WriteLine(“非法字符”); }

在次输入汉字时代码执行了catch块的内容

新手可以使用窗体程序编写计算器练习!!!

C#四行代码写简易计算器

纯手打,点个赞呗~

相关文章
|
2月前
|
存储 C# 索引
C# 一分钟浅谈:变量与数据类型简介
【9月更文挑战第1天】在 C# 编程中,了解变量与数据类型至关重要。本文详细介绍了 C# 中的值类型(如整数、浮点数、布尔值等)和引用类型(如类、接口、数组、字符串)。通过示例代码展示了变量的声明与使用方法,并针对数据类型转换错误、变量未初始化及数值溢出等常见问题提供了解决方案。正确选择数据类型不仅能提升程序性能,还可避免潜在错误,有助于编写高质量代码。
129 47
|
3月前
|
数据采集 存储 C#
C# 爬虫技术:京东视频内容抓取的实战案例分析
C# 爬虫技术:京东视频内容抓取的实战案例分析
|
3月前
|
传感器 开发框架 JSON
聊聊 C# dynamic 类型,并分享一个将 dynamic 类型变量转为其它类型的技巧和实例
聊聊 C# dynamic 类型,并分享一个将 dynamic 类型变量转为其它类型的技巧和实例
157 0
|
3月前
|
Java C#
C# 和 java 基本数据类型
C# 和 java 基本数据类型
22 0
|
5月前
|
存储 C# 开发者
C# 编程基础:注释、变量、常量、数据类型和自定义类型
C# 编程基础:注释、变量、常量、数据类型和自定义类型
|
5月前
|
存储 Java 编译器
C# 变量与参数详解
C# 变量与参数详解
|
5月前
|
开发框架 .NET 程序员
掌握C#语言的精髓:基础知识与实用技能详解(数据类型与变量+ 条件与循环+函数与模块+LINQ+异常+OOP)
掌握C#语言的精髓:基础知识与实用技能详解(数据类型与变量+ 条件与循环+函数与模块+LINQ+异常+OOP)
33 0
|
6月前
|
C#
C#的类和对象的概念学习案例刨析
【5月更文挑战第17天】C#是一种面向对象的语言,以类和对象为核心。类作为对象的模板,定义了属性(如Name, Age)和行为(如Greet)。对象是类的实例,可设置属性值。封装通过访问修饰符隐藏实现细节,如Customer类的私有name字段通过Name属性访问。继承允许新类(如Employee)从现有类(Person)继承并扩展。多态让不同对象(如Circle, Square)共享相同接口(Shape),实现抽象方法Area,提供灵活的代码设计。
65 1
|
6月前
|
安全 算法 测试技术
C#编程实战:项目案例分析
【4月更文挑战第20天】本文以电子商务系统为例,探讨C#在实际项目中的应用。通过面向对象编程实现组件抽象和封装,确保代码的可维护性和可扩展性;利用安全性特性保护用户数据;借助数据库操作处理商品信息;通过逻辑控制和算法处理订单;调试工具加速问题解决,展现C#的优势:面向对象、数据库交互、数据安全和开发效率。C#在实际编程中展现出广泛前景。
305 2
|
6月前
|
存储 C#
C#中的序列化和反序列化案例
C#中的序列化和反序列化案例