这些数据直接存储在栈(Stack)中,存取速度快,像外家功夫一样直接。
| 类型 | 描述 | 江湖比喻 |
|---|---|---|
int |
整数 | 普通的少林长拳,最常用。范围 -21亿 到 21亿。 |
long |
长整数 | 降龙十八掌,内力深厚,能存很大的数。 |
float |
单精度浮点 | 轻功水上漂,带小数,但精度一般(末尾要加 f)。 |
double |
双精度浮点 | 凌波微步,精度更高,默认的小数类型。 |
decimal |
高精度小数 | 算盘神功,专门用来算钱的,绝对精确(末尾要加 m)。 |
char |
字符 | 暗器,一次只能发一枚(单引号 'A')。 |
bool |
布尔值 | 是非剑法,只有两招:true (真) 或 false (假)。 |
这些数据存储在堆(Heap)中,栈里只存一个指向它们的地址(指针)。
string: 字符串。就像一串珍珠项链,由无数个字符(char)串联而成。用双引号 "Hello" 包裹。object: 对象。万物皆对象,这是所有类型的祖师爷。
using System;
namespace DataTypes
{
class Program
{
static void Main(string[] args)
{
// 刚猛外家拳
int age = 25; // 令狐冲今年25岁
long internalEnergy = 999999999L; // 内力值爆表
// 轻灵身法
double height = 175.5; // 身高
float weight = 65.5f; // 体重(注意那个 f)
// 算账专用
decimal money = 100.00m; // 盘缠(注意那个 m)
// 是非剑法
bool isDrunk = true; // 令狐冲喝醉了吗?是
// 字符串(珍珠项链)
string name = "令狐冲";
char sect = '华'; // 华山派(单字)
Console.WriteLine(name + " 也是 " + sect + "山派的!");
}
}
}
float 后面不加 f,decimal 后面不加 m,都会被视为 double!
请定义合适的变量来存储以下江湖信息:
bool isMale = true; // 或者用 string gender = "不详";
decimal price = 9.98m; // 涉及钱财,推荐用 decimal
string name = "任盈盈";