常量与变量
2015-06-30 21:47
330 查看
一、常量:文本常量,通常表示常量值,声明时必须初始化int a=123;float b=1.23F;<p>string s="C#.NET程序设计";</p>二、变量:变量是被用来存储特定类型的数据;如有需要,可以随时改变变量中所存储的数据值;变量具有名称、类型和值。
三、变量类型:
1、值类型:直接存储数据,存储在堆栈中。
主要分为:简单类型(Simple types)、结构类型(Struct types)枚举类型(Enumeration types)等。
(1)简单类型:整数类型、字符类型、布尔类型、浮点类型、十进制类型;
整数类型:代表没有小数点的整数数值,包括byte、ushort、uint、ulong。
字符类型:采用Unicode字符集,一个Unicode标准长度为16位。
声明和使用
char ch1='x';
布尔类型:常用于逻辑运算,bool值与整数值不能相互转换。如果变量声明为bool类型,只能使用true或者false。
bool b1=true;
bool b2=0; 浮点类型:处理含有小数的数值数据,浮点类型主要包含float和double类型;
(2)结构类型:和类一样,可以声明构造函数、数据成员、方法、属性等。不能派生类,不能继承,结构成员不能被访问权限控制字protected修饰,也不能被virtual、abstract修饰结构方法。
using System; struct point //结构定义 { public int x,y;//结构中可以声明构造函数和方法,变量不能赋值。 } class test { static void Main() { point p1; p1.x=166; p1.y=111; point p2; p2=p1; point p3=new point() } }
(3)枚举类型:枚举类型是一种用户定义的类型,只有用户定义后才能使用它
Enum 名称{枚举表};
enum Color { Red, Green, Blue, Max = Blue } 显示一个枚举,其中的两个枚举成员(Blue 和 Max)具有相同的关联值。
2、引用类型:存储数据的引用,在托管堆中为引用变量类型分配内存。
主要分为:类、接口、委托和数组
(1)类:如object类为所有类的基类;不指定的话,就默认object为基类。
public class 类名
{
类体;}
(2)接口:接口包含的成员只有方法,属性,索引器(有参属性),事件四种成员;方法的实现是在实现接口的类中完成的。
interface ISampleInterface{void SampleMethod();}class ImplementationClass : ISampleInterface{// Explicit interface member implementation:void ISampleInterface.SampleMethod(){<4000/div>// Method implementation.}static void Main(){// Declare an interface instance.ISampleInterface obj = new ImplementationClass();// Call the member.obj.SampleMethod();}}
(3)委托:目的通过创建委托类型对象去调用函数。
声明格式:
修饰符 delegate 函数返回类型 定义的委托标识符(函数形参列表);
如:public delegate int MyDelegate();
(4)数组:一组类型相同的有序数组,数组名、数据元素类型、维数。
int[] arr;
float[] farr;
double[] darr;
string[] sarr;
int[,] arr2;
float[,,]farr2;
数组的初始化:int[] arr=new int[3]定义一个3维数组;
交错数组:数组的元素还是数组。
int[][]arr=new int[2][];//定义数组arr,有两个元素,每个元素都是一个数组;
arr[0]=new int[]{1,2,3};//定义第一个元素,是一个数组;
arr[1]=new int[]{1,2,3,4,5,6};//每个元素的数组可以不等长,arr[1][1]=2;
复制数组:
int[]arr={1,2,3,4,5,6};
int[]arr2=arr;
四、值类型与引用类型的区别
1、对于值类型的实例,如果作为方法中的局部变量,则被创建在线程栈上。如果该实例作为类型的成员,则作为类型成员的一部分,连同其它类型字段存放在托管堆上。
2、引用类型的实例创建在托管堆上。
相关文章推荐
- JAVA学习笔记(二) - 运算符
- JAVA学习(三):Java基础语法(变量、常量、数据类型、运算符与数据类型转换)
- 实例/静态变量、局部变量和常量的定义及其作用域
- 常量与变量基础
- 1.2-Java-基础语法
- ubuntu软件安装方法
- 08-排序6. PAT Judge (25)
- 有向图欧拉回路 Codeforces508D Tanya and Password
- ubuntu-date命令的使用
- HTTP基础
- 解决acadia交叉编译后程序不能运行的问题。
- 开篇
- asp 之 让实体中字段类型为DateTime的字段只显示日期不显示时间
- IOS 启动画面设置
- 关于php/js抓取/采集
- itext 使用详解 02 - itext 基本模块
- 异常
- 脏读,不可重复读与幻读
- JS获取request的字符串变量,复选框的选中赋值
- 最常用的字