第二章 各种各样的盒子

第二章 各种各样的盒子

苹果有很多种,不同苹果的口感、甜度、水分都不同,榨汁的方法也不同。
可以用不同的盒子装起来方便区分,红富士这一类的装这些的盒子,青苹果这一类的装那些盒子,这一类那一类该怎么处理分别用不用的方式。这就涉及到了数据类型。

各种数据类型

C# 内置了十几种数据类型,用来处理字符型、整数、小数……
使用数据类型定义变量,变量就是装苹果的盒子。一个变量就是一个盒子。

// string 数据类型,用来存入字符串类型,用双引号括住
// 搞一个盒子,给这个盒子打上标签,叫Box01
string Box01;
// 这种盒子专门用来放苹果,
Box01 = "红富士";
Console.WriteLine(Box01);

// 盒子可以直接再放入一个苹果,但是原来的苹果可以直接被换掉
Box01 = "白苹果";
Console.WriteLine(Box01);

// 盒子可以直接再放入一个苹果,也可以和原来的苹果共存
Box01 = "白苹果"+"红富士";
Console.WriteLine(Box01);

// int 整数类型,用来存入整数数字。
int Box02;
Box02 = 23;
Console.WriteLine(Box02);

// 盒子可以重新放入一个数字,支持在盒子自身上计数
// 可以理解为把这个数字拿出来计算一下,把计算后的数字再放进去
// x=x+1和数学课本上的方程式不是一回事,在编程中属于内存操作。

Box02 = Box02 + 1;
Console.WriteLine(Box02);

// double 64位双精度浮点类型数据,用来存放小数。
double Box03 = 0.14;
Console.WriteLine(Box03);

// boolean 布尔类型,表示判断结果的真或假
bool Box04 = false;
Console.WriteLine(Box04);

// var 类型。可以是任何类型。
var Box05 = 78;
Console.WriteLine(Box05);

变量支持数学运算和逻辑运算

// 字符串类型使用加号(+)连接
string 第一句 = "白日依山尽";
string 第二句 = "黄河入海流";
Console.WriteLine("《登鹳雀楼》的前两句是"+第一句+","+第二句);

// 整数、浮点数可以使用四则运算
int number= 23 * 10;
Console.WriteLine("23X10={0}",number);

double number2 = 3.14;
Console.WriteLine($"半径为6的圆的面积是{number2*6*6}");

一堆一样的盒子

想提高生产线就要多放几个苹果,但是放再多的苹果也是一个一个的削皮榨汁,效率有点低了。能否一次打包放入10个苹果?同时,也升级一下机器,一次处理10个苹果?
WHY NOT?计算机本来就可以批量处理啊,计算机本来就是为了提高生产力和效率而发明的。把数据打个包,就是数组。

// 把盒子升级一下,变成箱子
string[] ABagOfApples = { "红富士A", "红富士B", "红富士C", "红富士D", "红富士E"};

// 相应流水线上的机器也换个方式使用
// 这是一个数据,相应输出时就不能按照单个那样
Console.WriteLine(ABagOfApples);

// 想找这个箱子里的苹果时就要点名里面的第几个苹果
// 数组内元素的标号是从零开始的
// 要拿出"红富士D"就指明箱子里的序号3的苹果
Console.WriteLine(ABagOfApples[3]);

一些很牛逼的箱子

这些是箱子,不是盒子,而且箱子还带有很多功能。

1. 列表

列表比数组更灵活,允许动态调整大小,并且可以存储相同类型的元素。

// 定义并初始化一个字符串列表。
// 注意列表类型是用尖括号括住的。
// 尖括号表示泛型,是可以装任意东西的箱子,
// 这里指定了字符串类型,表示可以装很多个苹果的箱子
List<string> storage = new List<string> { "红富士A", "红富士B", "红富士C", "红富士D", "红富士E" };

// 往箱子里再装一个苹果
storage.Add("红富士F");

// 从箱子里拿出苹果
Console.WriteLine(storage[3]);

2. 字典

字典是存储键值对的集合,允许根据键快速检索值。

// 定义一个字典
// 注意键值对类型是<string, int>,表示一个元素组中,
// 前一个元素是字符串型,后一个是整数型
// 给箱子里的每一个苹果标记一下重量
Dictionary<string, int> apples = new Dictionary<string, int> { { "红富士A", 200 }, { "红富士B", 180 }, { "红富士C", 190 } };

// 向箱子里放入一个185克的苹果
apples["红富士D"] = 185;

// 拿出一个苹果
Console.WriteLine("红富士B的重量: " + apples["红富士B"]+"克");
posted @ 2025-05-26 18:13  冲浪的奶糖  阅读(7)  评论(0)    收藏  举报