码迷,mamicode.com
首页 > 其他好文 > 详细

&和&&、字母数字对应的ASCII码。

时间:2015-01-13 19:56:48      阅读:402      评论:0      收藏:0      [点我收藏+]

标签:

打印A、Z;a z   0   9对应的ASCII码。

                System.out.println("A:"+(int)'A');
		System.out.println("Z:"+(int)'Z');
		System.out.println("--------------------------");
		System.out.println("a:"+(int)'a');
		System.out.println("z:"+(int)'z');
		System.out.println("---------------------------");
		System.out.println("0:"+(int)'0');
		System.out.println("9:"+(int)'9');

注意字符类型(char)的本质是数字。

对于&和&&的运算,当用一个&时,即使前面的错误了(即直到整个式子的答案就是false后,他还会计算后面的表达式如果有的话),但是用两个&&时,就不会出现这种情况,即前面判断已经得出结论后就不会再去计算后面的式子(短路)。

int x=1;
if(x>=3&++x<=8)
	System.out.println("正确");
else
	System.out.println("错误");
System.out.println(x);

结果x的值已经变成了2
int x=1;
if(x>=3&&++x<=8)//短路
	System.out.println("正确");
else
	System.out.println("错误");
System.out.println(x);
结果x的值没变,还是1

即虽然都有输出"错误",但是x的值不一样

两个数相加,至少是int类型 的才行,否则要强制转换成相应的类型,即byte,char ,short这三个基本类型做加运算时要强制转换:例子如下:

                char c=2;
		char d=3;
		c=(char) (c+d);//c=c+d会报错,
		
		short aa=3;
		short bb=4;
		bb=(short) (aa+bb);//bb=aa+bb会报错

		byte b=25;
		b=(byte)(b+5);//b=b+5;//报错,因为两个数字相加至少是int型的要强转如下面。
		b+=5;//但是这样写不会报错,因为编译器自动转化成了int型了才做的和运算。
		//也可以这样写,如果报错误了把byte b=25写成int。

注意:b=b+4;和b+=4;我们推荐的是b=b+4,因为这样易读,且编译时发现出错会及早的的发现。但是b+=4就不会发现隐藏的一些错误。

                char xing='黄';
		System.out.println((int)xing);//打印汉子黄对应的数字40644
		System.out.println(xing);//打印汉子  黄

这样我们的某些密码就可以这样设置了,你可以给别人说,给我一个JDK我就知道我的什么什么密码是多少。O(∩_∩)O~~

注意,定义长整型时数字后面要写L,否面会报错误提示

long ll=12345678L

&和&&、字母数字对应的ASCII码。

标签:

原文地址:http://blog.csdn.net/u012110719/article/details/42679943

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!