日期:2013-11-24  浏览次数:20417 次

c#中的数据字符类型:

string不能存储在堆栈中,显然属于引用类型;char则明显属于值类型。

字符串类型:

声明一个字符串类型时,不是在堆中创建一个字符串对象,而只是在堆栈中创建了一个字符串的引用,还没有引用字符串对象。

不包含任何字符的字符串,称为空字符串。

char(字符)类型:

将文本以数的形式存储,将单个的字符放在char的变量中,且它存储为一个0~65535之间的16位数值形式,表示一个unicode字符。

转义字符:

\' 单引号

\" 双引号

\\ 斜杠

\0 空值

\a 报警

\b 退格

\f 换页

\n 换行

\r 回车

\t 制表位字符

\v 纵向列表符

技巧:如果字符串的前缀是@,那么其后的字符串将按照其实际显示的意思解释,不存在转义字符之说。

转义字符的另一用途:char c=”\vuXXXX”,能给c赋一个不在键盘上或不是正规的字符。

布尔类型:

只有两个值:true or false

c#中不允许把布尔类型的变量表示成任何不是true或者false的值。

对象类型:

在c#中,Object类型是一种通用类型,可以表示任何数据类型,是所以类型的基类型,即System.Object,只有在运行中才能确定它的值,另外一种表示是:object。

处理日期数据:

DateTime date;

但是不能这样赋值:date=”10/02/1998”;

应该是:date=Convert.ToDateTime(”10/02/1998”);

其值并不是以字符的形式而是以数字的形势来存储的,但是不能给其赋一个整型的值,只能赋一个有日期格式的值。

如果要在网页是显示,必须把日期转换为字符串形式:Strimg datetime=date.ToString();

四、运算符

1、赋值运算:

2、算术运算:

/ 除法

% 取模/求余

3、运算符的优先级:

从上到下依次减弱:

++,--,一元的-

*,/,%

+,-

=,+=,-+,*=

五、连接字符串:

+与+=的应用。

六、数据类型之间的转换

1、隐式转换



2、显示转换(强制转换)

int num1=66;

int num2=35;

double xxx;

xxx=num1/num2; //存在数据丢失;

xxx=(double)num1/num2; //正确的执行,相当于xxx=(double)num1/(double)num2;

强制类型转换的优先权仅次于括号的优先权,所以前面的执行与xxx=(double)(num1/num2);的值是不一样的。

不能在数值和bool之间进行转换。

3、无效的强制类型转换

为了避免这种情况出现,我们使用这样一种技术:

long intNumber=250000000;

int xxxx;

checked

{

xxxx=(int)intNumber;

}

4、数据转换



相关资料更多>