C#基础整理(二)
1、变量类型
int、double、string、char、bool、decimal
变量使用规则:先声明,再赋值,最后使用
2、命名规范:
Camel:第一个单词首字母小写,其他单词首字母大写,其余字母小写
Pascal:每个单词的首字母都大写,其余字母小写
5、常量
声明常量的语法:
const 变量类型 变量名=值;
例:public const int Che_SHI = 10001;
常量一旦赋值,不能被重新赋值
6、枚举(规范我们的开发)
语法:
[public] enum 枚举名
{
值1,
值2,
值3,
...........
}
[]中表示可以省略
Public:访问修饰符,公开的公共的,修饰一个成员的访问权限。
enum:关键字,声明枚举的关键字
枚举名:要符合pascal命名规范
将枚举声明到命名空间的下面,类的外 面,表示这个命名空间下,所有的类都可以使用这个枚举。
枚举就是一个变量类型,像int、string这样
只是枚举声明、赋值、使用的方式跟那些普通的变量类型不一样。
枚举是自己写的变量类型
我们可以将一个枚举类型的变量跟int类型和string类型互相转换。
枚举类型默认是跟int类型相互兼容的,所以可以通过强制类型转换的语法互相转换。
当转换一个枚举中没有的值的时候,不会抛异常,而是直接将数字显示出来。
枚举同样也可以跟string类型互相转换,如果将枚举类型转换成string类型,则直接调用ToString().
如果将字符串转换成枚举类型则需要下面这样一行代码:
(要转换的枚举类型)Enum.Parse(typeof(要转换的枚举类型),"要转换的字符串");
调用Enum类里的Parse()方法来帮助我们将一个字符串转换成对应的枚举类型
如果转换的字符串是数字,则就算枚举中没有,也会不会抛异常。
如果转换的字符串是文本,如果枚举中没有,则会抛出异常。
7、结构
为了一次性声明多个不同类型的变量(字段)
语法:
[public] struct 结构名
{
public string name;
成员//字段
}
程序中字段能存多个值,变量只能存一个值。
字段起名规范,每个字段前面加一个下划线,来区分变量和字段。
8、数组
一次性存储多个相同类型的变量就用数组。
语法:
数组类型[] 数组名=new 数组类型[数组长度];
int []nums=new int [5];
数组的长度一旦固定了,就不能再被改变了
数组拥有初值
int数组初值 0
string数组初值 null(不占空间)
bool数组初值 false
四种写法
int[] nums = new int[5];
int[] nums = { 1, 2, 3, 4, 5 };(常用)
int[] nums = new int[5] { 1, 2, 3, 4, 5 };
int[] nums = new int[] { 1, 2, 3, 4, 5, };
int范围 最大值 int.MaxValue
最小值 int.MinValue
可以通过下标或者索引去访问数组中的元素
9、冒泡排序
将一个数组中的元素按照从大到小或者从小到达的顺序进行排列。
int[] nums = { 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 };
Array.Sort(nums); //对数组进行升序排列
Array.Reverse(nums); //对数组进行倒序排列
不需要返回值,需要一个数组作为参数
10、方法/函数
函数就是将一堆代码进行重用的一种机制。
函数的语法:
[public]static 返回值类型 方法名([参数列表])
{
方法体:
}
public static int AddSum(int a,int b)
{
return a+b;
}
返回值类型:如果不需要写返回值,写void。有返回值的用return返回
参数列表:完成这个方法所必须要提供给这个方法的参数。有些方法不需要写参数。
11、return的用法
1)在方法中返回要返回的值。
2)立即结束本次方法。
3)一层一层的门,return只返回上一层。
12、我们在Main()函数中,调用Test()函数。
我们管Main()函数称之为调用者,管Test()函数称之为被调用者。
如果Test()想要得到Main()的值:
1)传递参数。
2)使用静态字段来模拟全局变量。
如果Main()想要得到Test()的值:
1)返回值
13、不管是实参还是形参,都是在内存中开辟了空间的。
14、方法的功能一定要单一。
方法中不要出现提示用户输入。
15.out、ref、params
1)、out参数。
如果你在一个方法中,返回多个相同类型的值的时候,可以考虑返回一个数组。
但是,如果返回多个不同类型的值的时候,返回数组就不行了,那么这个时候,
我们可以考虑使用out参数。
out参数在一个方法中可以返回多个不同类型的值。
out参数要求在方法的内部必须为其赋值
2)、ref参数
能够将一个变量带入一个方法中进行改变,改变完成后,再将改变后的值带出方法。
ref参数要求在方法外必须为其赋值,而方法内可以不赋值。
ref不需要创建一个新的变量来接收返回值。
ref是 有进有出,而out是 只出不进。
3)、params可变参数
将实参列表中跟可变参数数组类型一致的元素都当做数组的元素去处理。
params可变参数必须是形参列表中的最后一个元素。
public static void Test(string name,params int [] score)
16.方法的重载
概念:方法的重载指的就是方法的名称相同,但是参数不同。
参数不同,分为两种情况
1)、如果参数的个数相同,那么参数的类型就不能相同。
2)、如果参数的类型相同,那么参数的个数就不能相同。
***方法的重载跟返回值没有关系。
用哪个就传哪个参
方法的重载就是可以放任何的参数
17、字符串的用法
字符串的length可以用来比较字的长度
18.方法中改变数组,不需要返回值来接收就可以改变。数组在方法中是个例外。
19.Cosole的几种方法
1)改变字体颜色
Console.ForegroundColor = ConsoleColor.Yellow;
2)console.clear(); 清屏
3)console.readkey(true);不显示输出的按键
4)输出时,保留小数点后两位
Double avg=10/3;
Console.WriteLine("{0:0.00}", avg);
C#基础整理(二)的更多相关文章
- 机器学习 —— 基础整理(六)线性判别函数:感知器、松弛算法、Ho-Kashyap算法
这篇总结继续复习分类问题.本文简单整理了以下内容: (一)线性判别函数与广义线性判别函数 (二)感知器 (三)松弛算法 (四)Ho-Kashyap算法 闲话:本篇是本系列[机器学习基础整理]在time ...
- nutch的一些基础整理
nutch的一些基础整理 原创 2015年03月22日 18:18:01 标签: nutch / 240 编辑 删除 一.关于配置文件: nutch-default.xml:爬虫的默认配置.在${nu ...
- [转帖]nginx基础整理
nginx基础整理 https://www.cnblogs.com/guigujun/p/6588545.html 目录结构如下: Nginx基础知识 Nginx HTTP服务器的特色及优点 Ngin ...
- Linux基础练习题(二)
Linux基础练习题(二) 1.复制/etc/skel目录为/home/tuer1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限. [root@www ~]# cp -r ...
- Bootstrap <基础十二>下拉菜单(Dropdowns)
Bootstrap 下拉菜单.下拉菜单是可切换的,是以列表格式显示链接的上下文菜单.这可以通过与 下拉菜单(Dropdown) JavaScript 插件 的互动来实现. 如需使用下列菜单,只需要在 ...
- RequireJS基础(二)
上一篇是把整个jQuery库作为一个模块.这篇来写一个自己的模块:选择器. 为演示方便这里仅实现常用的三种选择器id,className,attribute. RequireJS使用define来定义 ...
- Servlet基础(二) Servlet的生命周期
Servlet基础(二) Servlet的生命周期 Servlet的生命周期可以分为三个阶段: 1.初始化阶段 2.响应客户请求阶段 3.终止阶段 Servlet的初始化阶段 在下列时刻Servlet ...
- 好好写,好好干-PHP基础(二)
hi 好久没写,昨儿一写,感觉还是有人看的,至少是有一两个评论的~~好好干! 每天需要坚持的就那么4件事儿:写这个,学一点法语,看会儿书,锻炼.单身狗也有好处. 1.PHP 一.PHP基础(二) 1. ...
- php基础篇-二维数组排序 array_multisort
原文:php基础篇-二维数组排序 array_multisort 对2维数组或者多维数组排序是常见的问题,在php中我们有个专门的多维数组排序函数,下面简单介绍下: array_multisort(a ...
随机推荐
- eclipse (ADT) svn插件 过滤上传的 文件 文件夹 一劳永逸
其实很简单哈,过滤的有三种类型,1.文件.2.文件夹.3.android的target 在ADT中 window->preferences-> 会打开如下界面 ignore就是忽视的意思 ...
- C语言----项目构建Make,Automake,CMake
http://blog.csdn.net/dc_726/article/details/48978849
- Oracle会话及连接数优化
一.改动Oracle会话及最大连接数 1.查看最大连接数 SQL> show parameter processes; NAME ...
- Java精选笔记_IO流(字节流、InputStream、OutputStream、字节文件、缓冲区输入输出流)
字节流 操作图片数据就要用到字节流. 字符流使用的是字符数组char[],字节流使用的是字节数组byte[]. 字节流读写文件 针对文件的读写,JDK专门提供了两个类,分别是FileInputStre ...
- POJ 1837 Balance(01背包变形, 枚举DP)
Q: dp 数组应该怎么设置? A: dp[i][j] 表示前 i 件物品放入天平后形成平衡度为 j 的方案数 题意: 有一个天平, 天平的两侧可以挂上重物, 给定 C 个钩子和G个秤砣. 2 4 - ...
- 如何设置SOLR的高亮 (highlight)?
打开SOLR的核心配置文件: solrconfig.xml 找到 standard request handler 写入以下XML配置代码: <requestHandler name=" ...
- 使用jq的ajax实现对xml文件的读取
之前一直在用json来传递数据,但是xml也是不可缺少的,于是开始了xml的征程.xml的一些属性啊之类的在菜鸟教程上列举的已经很详细了,但是却没有前段部分的获取教程,查询资料,遂懂: index.x ...
- ios 图片处理( 1.按比例缩放 2.指定宽度按比例缩放
本文转载至 http://blog.sina.com.cn/s/blog_6f29e81f0101tat6.html //按比例缩放,size 是你要把图显示到 多大区域 CGSizeMake(300 ...
- 使用WdatePicker获取比当前时间大的写法
<input name="today.date" class="Wdate" type="text" onClick="Wd ...
- Day05_C操作符及二进制补码计算
回顾: 1.数据类型 2.二进制(八进制,十六进制) --------------------------------------------------------- 计算机中不可以使用负号表示 ...