(1)复习

1、变量

int  double   string   char   bool    decimal

变量的使用规则:先声明再赋值最后使用

2、Camo      Pascal

3、运算符

赋值运算符:=

复合赋值运算符:+=、-=、*=、/=、%=

算数运算符:+ - * / %

关系运算符:>   <    >=    <=    ==    !=

逻辑运算符: &&        ||         !

4、C#中的语法结构

(2)常量

声明常量的语法:

const     变量类型     变量名 = 值;
const int number = ;//常量,不能被重新赋值

(3)枚举

语法:

[public]  enum  枚举名

{
值1,
值2,
值3,
......
} public:访问修饰符。公开的公共的,哪都可以访问。
enum:关键字,声明枚举的关键字。
枚举名:要符合Pascal命名规范。

将枚举声明到命名空间的下面,类的外面,表示这个命名空间下,所以的类都可以使用这个枚举。

枚举就是一个变量类型,只是枚举声明、赋值、使用的方式跟普通的变量类型不一样。

   //声明了一个枚举Gender
public enum Gender
{
男,
女,
}
public enum Sesons
{
春,
夏,
秋,

}
public enum QQState
{
OnLine,
OffLine,
Leave,
Busy,
QMe
}
class Program
{
static void Main(string[] args)
{
//变量类型 变量名=值;
Gender gender = Gender.男;
Sesons s = Sesons.春;
QQState state = QQState.Busy;
}
}

(4)枚举类型和string以及int类型之间的转换

7、所有的类型都能够转换成string类型,调用ToString()。

     public enum QQState
{
OnLine,
OffLine,
Leave=,
Busy,
QMe
}
         static void Main(string[] args)
{
#region 将枚举类型强转成int类型
QQState state = QQState.OnLine;
//枚举类型默认可以跟int类型互相转换,枚举类型跟int类型是兼容的。
int n = (int)state;
Console.WriteLine(n);//
Console.WriteLine((int)QQState.OffLine);//
Console.WriteLine((int)QQState.Leave);//
Console.WriteLine((int)QQState.Busy);//
Console.WriteLine((int)QQState.QMe);//
Console.ReadKey();
#endregion
  static void Main(string[] args)
{ #region 将int类型转换成枚举类型(不能转换的将输出数字)
int n1 = ;
QQState state = (QQState)n1;
Console.WriteLine(state); //OffLine
Console.ReadKey();
#endregion
}
         static void Main(string[] args)
{ #region 将枚举类型转换成字符串类型
//所以的类型都可以转换成string类型
QQState state = QQState.OnLine;
string s = state.ToString();
Console.WriteLine(s);
Console.ReadKey();
#endregion
}
         static void Main(string[] args)
{ //将string类型转换成枚举类型(不能转换的文本将抛异常,数字不抛异常)
string s = "";
//将s转换成枚举类型
//Convert.ToString() int.Parse() int.TryParse()
//调用Parse()方法的目的就是为了让它帮助我们将一个字符串转换成对应的枚举类型
QQState state =(QQState ) Enum.Parse(typeof(QQState), s);
Console.WriteLine(state); //OnLine
Console.ReadKey();
}
             //枚举练习
//提示用户选择一个在线状态,我们接受,并将用户的输入转换成枚举类型
//再次打印到控制台 Console.WriteLine("请选择您QQ的在线状态 1--OnLine 2--OffLine 5-Leave 6--Busy 7--QMe");
string s = Console.ReadLine(); //输入1
//int i = int.Parse(s);
//QQState state = (QQState)i; //输出OffLine //QQState state = (QQState)Enum.Parse(typeof(QQState), s);
//Console.WriteLine(state); //输出OffLine switch (s)
{
case "":
QQState s1 = (QQState)Enum.Parse(typeof(QQState), "OnLine");
Console.WriteLine("您选择的在线状态是{0}", s1);
break;
case "":
QQState s2 = (QQState)Enum.Parse(typeof(QQState), "OffLine");
Console.WriteLine("您选择的在线状态是{0}", s2);
break;
case "":
QQState s5 = (QQState)Enum.Parse(typeof(QQState), "Leave");
Console.WriteLine("您选择的在线状态是{0}", s5);
break;
case "":
QQState s6 = (QQState)Enum.Parse(typeof(QQState), "Busy");
Console.WriteLine("您选择的在线状态是{0}", s6);
break;
case "":
QQState s7 = (QQState)Enum.Parse(typeof(QQState), "QMe");
Console.WriteLine("您选择的在线状态是{0}", s7);
break;
}
Console.ReadKey();

(5)结构

可以帮助我们一次性声明多个不同类型的变量

语法:
[public] struct 结构名
{
成员;//字段
}
变量在程序运行时只能存储一个值,而字段可以存储多个值。
         public   struct Person
{
public string _name; //字段
public int _age;
public char _gender;
}
static void Main(string[] args)
{
Person zsPerson; //声明
zsPerson.name = "张三";
zsPerson.age = ;
zsPerson.gender = '男'; Person lsPerson; //声明
lsPerson.name = "李四";
lsPerson.age = ;
lsPerson.gender = '女';
}
         //练习:定义一个结构类型Person,有三个成员变量,分别为姓名、性别、年龄
//性别用枚举类型
//声明两个Person类型的变量,分别表示张三 男 18岁/小兰 女 16岁
public struct Person
{
public string _name;
public int _age;
public Gender _gender;
}
public enum Gender
{
男,

}
static void Main(string[] args)
{
Person zsPerson;
zsPerson._name = "张三";
zsPerson._age = ;
zsPerson._gender = Gender.男;
Person laPerson;
laPerson._name = "小兰";
laPerson._age = ;
laPerson._gender = Gender.女; Console.WriteLine("{0},{1},{2}岁", zsPerson._name, zsPerson._gender, zsPerson._age);
Console.WriteLine("{0},{1},{2}岁", laPerson._name, laPerson._gender, laPerson._age);
Console.ReadKey(); }

(6)数组的定义

一次性存储多个相同类型的变量。

****数组的长度一旦固定了,就不能改变了。超出数组长度则抛出异常。

语法:
数组类型[] 数组名=new 数组类型 [数组长度] ;
             int[] nums = new int[];//声明,默认初始化都为0
//赋值
for(int i=;i<nums.Length ;i++)
{
nums[i] = i;
}
for (int i = ; i < nums.Length; i++)
{
Console.WriteLine(nums[i]);
}
Console.ReadKey();
string[] str =new string []; //声明,默认初始化为null。null不等于空。

bool[] bools=new bool [];  //声明,默认初始化为false。

(7)计算数组的最大值、最小值、总和、平均值

int max = int.MinValue;
int max = int.MaxValue;

(10)方法的简介

函数就是一堆代码进行重用的一种机制。

函数的语法:
[public] static 返回值类型 方法名([参数列表])
{
方法体;
}
public:访问修饰符,公开的,公共的,哪都能进行访问。
static:静态的。
返回值类型:如果不需要写返回值,写void。
方法名:Pascial。
参数列表:完成这个方法所必须要提供给这个方法的条件。

12、return

1)、返回要返回的值。

2)、立即结束本次的方法。

方法调用的语法:
类名.方法名([参数]);
        /// <summary>
/// 计算两个整数之间的最大值并将最大值返回
/// </summary>
/// <param name="n1">第一个整数</param>
/// <param name="n2">第二个整数</param>
/// <returns>将最大值返回</returns>
public static int GetMax(int n1, int n2)
{
return n1 > n2 ? n1 : n2;
}
static void Main(string[] args)
{
//计算两个整数之间的最大值
int max= Program.GetMax(, );
Console.WriteLine(max);
Console.ReadKey();
}

(11)方法的细节问题

.Net基础之5——复杂数据类型的更多相关文章

  1. Java02-java语法基础(一)数据类型

    Java02-java语法基础(一)数据类型 一.语法基础 语句:以分号(;)结束 System.out.println(“Hello World !”); 语句块:用一组花括号({})括起来 { … ...

  2. Java基础(二) 基本类型数据类型、包装类及自动拆装箱

    我们知道基本数据类型包括byte, short, int, long, float, double, char, boolean,对应的包装类分别是Byte, Short, Integer, Long ...

  3. Java编程基础——常量变量和数据类型

    Java编程基础——常量变量和数据类型 摘要:本文介绍了Java编程语言的常量变量和数据类型. 常量变量 常量的定义 一块内存中的数据存储空间,里面的数据不可以更改. 变量的定义 一块内存中的数据存储 ...

  4. openresty开发系列13--lua基础语法2常用数据类型介绍

    openresty开发系列13--lua基础语法2常用数据类型介绍 一)boolean(布尔)布尔类型,可选值 true/false: Lua 中 nil 和 false 为"假" ...

  5. MySQL基础(1) | 数据类型

    MySQL基础(1) | 数据类型 数值类型 TINYINT #小整数值,1 字节,有符号(-128,127),无符号(0,255) SMALLINT #大整数值,2 字节 MEDIUMINT #大整 ...

  6. c# 基础部分 (基本数据类型-- 表达式)

    一 基础部分 1.常用的基本数据类型 int  longing(长整) shortint(短整) string(文本型) char(字符型) bool (布尔型) false true 2.常量于变量 ...

  7. C++基础回顾1(数据类型, 控制语句, 数组)

    最近两天打开本科学校的C++教材,快速回顾了一下C++方面的内容.虽然书本内容比较基础,但是还是有些知识点值得自己强化记忆.分几篇文章,加上自己的理解记录如下. 先回顾面向过程的部分. C++数据类型 ...

  8. Java学习之旅基础知识篇:数据类型及流程控制

    经过开篇对Java运行机制及相关环境搭建,本篇主要讨论Java程序开发的基础知识点,我简单的梳理一下.在讲解数据类型之前,我顺便提及一下Java注释:单行注释.多行注释以及文档注释,这里重点强调文档注 ...

  9. python基础之五大标准数据类型

    学习一门语言,往往都是从Hello World开始. 但是笔者认为,在一个黑框框中输出一个"你好,世界"并没有什么了不起,要看透事物的本质,熟悉一门语言,就要了解其底层,就是我们常 ...

  10. python基础(二)-------数据类型

    python开发基础篇(二)数据类型 python数据类型有: 1.数字 1.只能存放一个值 2.一经定义,不可更改 3.直接访问 主要的分类为:整型,长整型,(python2有长整型的概念Pytho ...

随机推荐

  1. 写给Java程序员的Java虚拟机学习指南

    大家好,我是极客时间<深入拆解Java虚拟机>作者.Oracle Labs高级研究员郑雨迪.有幸借这个专题的机会,能和大家分享为何Java工程师要学Java虚拟机?如何掌握Java虚拟机? ...

  2. 有赞透明多级缓存解决方案(TMC)设计思路

    引子 TMC 是什么 TMC,即"透明多级缓存(Transparent Multilevel Cache)",是有赞 PaaS 团队给公司内应用提供的整体缓存解决方案. TMC 在 ...

  3. ip地址与运算 ipcalc命令

    http://man.linuxde.net/ipcalc 转载于:https://blog.51cto.com/sonlich/2064133

  4. INTERVIEW #3

    菊厂的面试本来没打算记录,因为当时投的是非技术岗(技术支持).为了全面,就寥做记录. 菊厂的面试因为有口头保密协议,所以不能透露具体题目. 0 群面 简历通过筛选后,会有短信通知去面试. 非技术岗第一 ...

  5. 算法竞赛进阶指南--hamilton路径

    // hamilton路径 int f[1 << 20][20]; int hamilton(int n, int weight[20][20]) { memset(f, 0x3f, si ...

  6. Codeforces Round #561 (Div. 2) A. Silent Classroom(贪心)

    A. Silent Classroom time limit per test1 second memory limit per test256 megabytes inputstandard inp ...

  7. 图论--2-SAT--详解

    问题描述: 现有一个由N个布尔值组成的序列A,给出一些限制关系,比如A[x]AND A[y]=0.A[x] OR A[y] OR A[z]=1等,要确定A[0..N-1]的值,使得其满足所有限制关系. ...

  8. 蓝色展开收缩悬浮QQ客服代码

    放在我的博客首页上的的预览图: 在文章区的预览图如下: 代码如下: <div class="scrollsidebar" id="scrollsidebar&quo ...

  9. Linux服务器有大量的TIME_WAIT状态

    我们经常会遇到在服务器上看到大量的TIME_WAIT,它们占用进程不释放,最后会导致所有进程数被耗完,服务器负载增高等生产事故,具体是什么原因导致的呢?我们先来看看TCP的三次握手四次挥手都是怎样的一 ...

  10. 简单搜索 kuangbin C D

    C - Catch That Cow POJ - 3278 我心态崩了,现在来回顾很早之前写的简单搜索,好难啊,我怎么写不出来. 我开始把这个写成了dfs,还写搓了... 慢慢来吧. 这个题目很明显是 ...