当前位置: 首页 > news >正文

C# 数据类型与运算符(学习笔记2)

1. 变量

int i = 10;  
变量类型+空格+变量名称+空格+初始值。

2. 常量

    const double PI = 3.1415926;固定不变的值用常量表示,只能赋值一次。

3.基本数据类型

用C#编程有两套数据类型,一是C#语言自带的,二是.Net Framework提供的(CTS)。
这两套类型完全兼容,为了统一,建议使用其中的一套。
简称 .NET 类 类型 宽度 范围(位)
byte Byte 无符号整数 8 0 到 255
--- --- --- --- ---
sbyte SByte 有符号整数 8 -128 到 127
int Int32 有符号整数 32 -2,147,483,648 到 2,147,483,647
uint UInt32 无符号整数 32 0 到 4294967295
short Int16 有符号整数 16 -32,768 到 32,767
ushort UInt16 无符号整数 16 0 到 65535
long Int64 有符号整数 64 -922337203685477508 到 922337203685477507
ulong UInt64 无符号整数 64 0 到 18446744073709551615
float Single 单精度浮点型 32 -3.402823e38 至 3.402823e38
double Double 双精度浮点型 64 -1.79769313486232e308 至 1.79769313486232e308
char Char 单 Unicode 字符 16 文本中使用的 Unicode 符号
bool Boolean 逻辑布尔值类型 8 True 或 False
object Object 所有其他类型的基类型

C#的类型分为值类型和引用类型。

            float f1 = 0.1f; // 单精度要加f.double d1 = 0.2;byte b1 = 0b01101100;char c1 = 'c';

4.枚举

        enum Country{China=1,USA=2,Russion=3}

用于表示同一种类型的集合,在编程时更加友好。

5.结构

        struct Student{public string Name;public string Description;public int age;}

用于表示一个对象,定义后可以直接使用。

            Student s;s.age = 10;

结构可以嵌套:

      struct Student{public string Name;public string Description;public int age;struct Bookbag{public string brand;public string color;}}

6.数组

            int[] a = new int[6];// 一维数组int[] a1 = new int[2] { 1,2};  int[,] b = new int[6,6]; // 二维数组,6行6列int[,] b2 = new int[2, 2] { {11, 12}, { 21, 22 }  };
1. Average 平均值
2. Count 数组中元素的数量
3. Length 数组长度
4. LongCount 数组中Long类型的个数
5. Max 最大值
6. Min 最小值
7. Sum  求和
8. GetUpperBound 数组索引最大值
9. GetLowerBound 数组索引最小值
10. First 第一个
11. Last 最后一个

7.object

所有类型的基类,任何类型的值都可以传给object类型,但是object类型的值不可以给任意类型,需要转换。

            string s1 = "hello";object obj1 = s1; // 直接赋值(装箱)string s2 = (string)obj1;// 需要转换 (拆箱)

转换的过程比较消耗资源,和var不一样。

8.var

编译的时候确定数据类型,一旦确定后不能再更改,不消耗资源。

            var j1 = 10;var j2 = 20;int j3=j1 + j2;

9.一元运算符

    a++;a+=b;

10.二元运算符

    a=b+c;a=b*c;

11.三元运算符

d= a>0?b:c;

12.注释

        // 单行注释
        /*** 段注释*/
        /// <summary>///  XML格式的文档/// </summary>/// <param name="sender"></param>/// <param name="e"></param>

13.代码折叠

        #region/*** 段注释*/struct Student{public string Name;public string Description;public int age;struct Bookbag{public string brand;public string color;}}#endregion

14.变量作用域

字段 > 方法或事件中的变量 > 循环中变量

  • 类中字段
class Charpter2{public Charpter2(){}public string id { get; set; }public string name { get; set; }public string description { get; set; }}
  • 方法中变量
        public void Test(){int a=1; int b=2;int c = a + b;System.Windows.Forms.MessageBox.Show(c.ToString());}
  • 循环中变量
        public void Test2(){for (int i = 0; i < 10; i++){int c = i * i;}}

15.命名空间

对代码功能归类,有效解决类,方法,变量等重名的问题

namespace WindowsFormsApp1.charpter
{}
http://www.jsqmd.com/news/40598/

相关文章:

  • 《移动开发:Flutter与React Native的对比》‌
  • 20232420 2025-2026-1 《网络与系统攻防技术》实验五实验报告
  • kde neon: 配置国内源
  • JWT笔记
  • 2025藤校申请少走弯路!5家权威机构测评,从申请到就业一站式护航
  • 词向量:开启自然语言处理的奇妙之旅 - 详解
  • 11.14日学习笔记
  • [Python刷题记录]-有效的括号-栈-简单
  • [KaibaMath]1021 关于[0, 1]与[a, b]等势的证明
  • 超参数调优:Grid Search 和 Random Search 的实战对比
  • 征程 6X 常见 kernel panic 问题
  • 20251114日报
  • 实用指南:26秋招三分钟快速背诵一个八股-Spring中Bean的生命周期
  • 11.14 —— (VP)2024icpc杭州
  • 2025-11-13~14 hetao1733837的刷题记录
  • CF1381D The Majestic Brown Tree Snake/SS251114C. 历遍的树(inverse)
  • 2025年11月宁夏数字人服务商/供应商最新专业推荐:AI驱动下的企业数字化转型新引擎
  • [KaibaMath]1020 与海明码有关的最小值问题
  • FreeSWITCH使用RNNoise进行实时通话降噪
  • 不是 DE_aemmprty 的草稿纸
  • 2025年宁夏数字人服务商专业评测:AI驱动下的企业数字化转型新引擎
  • SqlServer资料
  • 如何将 Android 联系人备份到 Mac 的 4 种容易
  • 收藏项目系列---【大屏模板合集】
  • Spring AI Alibaba 项目源码学习(六)-Agent Framework 工作原理与使用
  • 分布式之RabbitMQ的使用(3)QueueBuilder - 详解
  • 2025年市面上口碑好的出国留学中介机构哪家强,全球联申/名校录取/留学就业一体化/背景提升/语言培训中介哪家好
  • 网络犯罪新手段:黑客如何利用IT技术实施货物盗窃
  • 11/14
  • 25.11.14