C#语法

控制台 Console

Console.WriteLine();
Console.ReadLine();

随机数 Random

Random random = new Random();
random.Next();

变量

变量类型 变量名

  • int
  • float
  • char
  • string
  • bool
  • var 推断类型

数据类型转换

  • .Parse();
  • .ToString();
  • 隐式转换
  • 显示转换

方法

private static void Func() {}

数组

//声明赋值
int[] arr = new int[]{0,1};
Array arr = new int[]{0,1};
int[] arr = {0,1};
//二维数组
int[,] arr = new int[2,2];
//数组遍历
foreach (int i in arr) {}
//长度
arr.Length
//清除
Array.Clear
//复制
Array.copy
arr.CopyTo
//查找
Array.IndexOf
Array.LastIndexOf
//排序
Array.Sort
//反转
Array.Reverse
//克隆
arr.Clone

参数

  • 值参数 传递信息
int a = 1;
Fun(a);
private static void Fun(int a){}
  • 引用参数ref 改变数据
int a = 1;
Fun(ref a);
private static void Fun(ref int a){}
  • 输出参数out 返回结果
int a;
Fun(out a);
private static void Fun(out int a){
a=2;
}

拆装箱

装箱box

值类型隐式转换为object类型或由此值类型实现的任何接口类型的过程。

内部机制:

1.在堆中开辟内存空间

2.将值类型的数据复制到堆中

3.返回堆中新分配对象的地址

拆箱unbox

从object类型到值类型或从接口类型到实现该接口的值类型的显式转换。

内部机制:

1.判断给定类型是否是装箱时的类型

2.返回已装箱实例中属于原值类型字段的地址

注意:

  • 拆箱后的类型必须与装箱时的类型相同。
  • 伴随拆箱的字段复制步骤不属于拆箱过程。
  • 装箱和拆箱不是互逆的过程,装箱的性能开销远大于拆箱。

String

特性
  • 字符串常量具备字符串池特性

字符串常量在创建前,首先在字符串池中查找是否存在相同文本。如果存在,则直接返回该对象引用;如果不存在,则开辟空间存储。

目的:提高内存利用率。

  • 字符串具有不可变性

字符串常量一旦进入内存,就不得再次改变。因为如果在原位置改变会使其他对象内存被破坏,导致内存泄漏。当遇到字符串变量引用新值时,会在内存中新建一个字符串,将该字符串地址交由该变量引用。

StringBuilder

可变字符串,一次开辟可以容纳n个字符大小的空间

优点:可以在原有空间修改字符串,避免产生垃圾

适用性:频繁对字符串操作

StringBuilder builder = new StringBuilder();
build.Append();
build.Insert();
build.Replace();
build.Remove();
build.ToString();

Unity学习笔记02 —— C#语法的更多相关文章

  1. 软件测试之loadrunner学习笔记-02集合点

    loadrunner学习笔记-02集合点 集合点函数可以帮助我们生成有效可控的并发操作.虽然在Controller中多用户负载的Vuser是一起开始运行脚本的,但是由于计算机的串行处理机制,脚本的运行 ...

  2. 机器学习实战(Machine Learning in Action)学习笔记————02.k-邻近算法(KNN)

    机器学习实战(Machine Learning in Action)学习笔记————02.k-邻近算法(KNN) 关键字:邻近算法(kNN: k Nearest Neighbors).python.源 ...

  3. OpenCV 学习笔记 02 使用opencv处理图像

    1 不同色彩空间的转换 opencv 中有数百种关于不同色彩空间的转换方法,但常用的有三种色彩空间:灰度.BRG.HSV(Hue-Saturation-Value) 灰度 - 灰度色彩空间是通过去除彩 ...

  4. python3.4学习笔记(一) 基本语法 python3不向下兼容,有些语法跟python2.x不一样

    python3.4学习笔记(一) 基本语法 python3不向下兼容,有些语法跟python2.x不一样,IDLE shell编辑器,快捷键:ALT+p,上一个历史输入内容,ALT+n 下一个历史输入 ...

  5. ASP.NET MVC 学习笔记-2.Razor语法 ASP.NET MVC 学习笔记-1.ASP.NET MVC 基础 反射的具体应用 策略模式的具体应用 责任链模式的具体应用 ServiceStack.Redis订阅发布服务的调用 C#读取XML文件的基类实现

    ASP.NET MVC 学习笔记-2.Razor语法   1.         表达式 表达式必须跟在“@”符号之后, 2.         代码块 代码块必须位于“@{}”中,并且每行代码必须以“: ...

  6. 基于.net的分布式系统限流组件 C# DataGridView绑定List对象时,利用BindingList来实现增删查改 .net中ThreadPool与Task的认识总结 C# 排序技术研究与对比 基于.net的通用内存缓存模型组件 Scala学习笔记:重要语法特性

    基于.net的分布式系统限流组件   在互联网应用中,流量洪峰是常有的事情.在应对流量洪峰时,通用的处理模式一般有排队.限流,这样可以非常直接有效的保护系统,防止系统被打爆.另外,通过限流技术手段,可 ...

  7. Java学习笔记之---基础语法

    Java学习笔记之---基础语法 一. Java中的命名规范 (一)包名 由多个单词组成时,所有字母小写(例如:onetwo) (二)类名和接口 由多个单词组成时,所有单词首字母大写(例如:OneTw ...

  8. SaToken学习笔记-02

    SaToken学习笔记-02 如果排版有问题,请点击:传送门 常用的登录有关的方法 - StpUtil.logout() 作用为:当前会话注销登录 调用此方法,其实做了哪些操作呢,我们来一起看一下源码 ...

  9. Redis:学习笔记-02

    Redis:学习笔记-02 该部分内容,参考了 bilibili 上讲解 Redis 中,观看数最多的课程 Redis最新超详细版教程通俗易懂,来自 UP主 遇见狂神说 4. 事物 Redis 事务本 ...

  10. CUBRID学习笔记 41 sql语法之select

    cubrid的中sql查询语法 SELECT [ ] [{TO | INTO} ][FROM ] [WHERE ][GROUP BY {col_name | expr} [ASC | DESC], . ...

随机推荐

  1. Vue router前端路由配置以及实现tab切换

    vue router 安装:npm install vue-router或cnpm install vue-router或yarn add vue-router. 安装完成之后会在package.js ...

  2. 字典方法 setdefault()、pprint;迭代、递归的区别

    计算一个字符串中每个字符出现的次数 import pprint message = 'It was a bright cold day in April, ' \ 'and the clocks we ...

  3. C语言初级阶段5——函数2

    C语言初级阶段5--函数2 址传递 1.地址:在定义变量,数组,函数等等,系统会自动给分配他们的内存区域(地址),把这个数据放到这个地址上面. 2.&:&a 得到a的地址编号 3.*: ...

  4. windows-git-tagslist

    windows平台使用 Git-bash + vim + Taglist + ctags + cscope 安装Git for win版 安装ctags for win版,目录添加到环境变量 下载 T ...

  5. cpu的调度

    什么是cpu的调度 所谓 CPU 调度,就是确定把哪个处于淮备就绪状态的进程移入运行状态.也就是说,CPU调度算法将决定把 CPU 给予哪个进程,以便它能够运行. 两种调度方式 CPU 调度可以是在一 ...

  6. C语言 (数据结构)在顺序表中用二分查找和冒泡排序算法

    main.c: #include <stdio.h> #include <stdlib.h> #include "SequenceList.h" int m ...

  7. 【帆吖】Java学习零基础21

    数组 1 package array; 2 3 public class Demo1 { 4 public static void main(String[] args) { 5 int[ ] num ...

  8. 英码科技边缘计算智慧工地解决方案——给工地戴上AI“安全帽”

    据统计显示,2021年全国共发生房屋市政工程生产安全事故734起,死亡840人:且近3年来,工地事故数量.死亡人数连续攀升.这不仅仅是一个普通的数字,每个数字都代表一个独特.鲜活的生命.为什么每年会发 ...

  9. Unity检测鼠标是否与UI交互

    在Unity项目中,假设在鼠标按键时会触发游戏内的操作,但是在鼠标与UI进行交互时我们希望停止游戏中的操作,这是需要使用EventSystem中的方法来检测鼠标是否正在与UI交互 private bo ...

  10. [复现]陇原战"疫"2021网络安全大赛-PWN

    bbbaby 控制__stack_chk_fail,栈溢出 from pwn import * context.os = 'linux' context.log_level = "debug ...