Java基础小结(数值类型转换规则)
Java基础小结(数值类型转换规则)
一 数值类型转换规则
数值型数据进行运算时,如果操作数的类型不同或操作数的类型均低于int型,则
会进行自动类型转换处理,具体规则如下:
1)如果两个操作数中有一个是double型,则系统先将另一个操作数的值转换为double
型,然后再进行运算,否则
2)如果两个操作数中有一个是float型,则系统先将另一个操作数的值转换为float
型,然后再进行运算,否则
3)如果两个操作数中有一个是long型,则系统先将另一个操作数的值转换为long
型,然后再进行运算,否则
4)两个操作数的值都将被转换为int型
5)如果只有一个操作数(例如进行"~"位运算时)且其类型低于int型时,则将该操作数的值转换为int型
简单归结为:
1) byte,short,char->int->long->float->double
2) byte,short,char之前不会互相转换,他们三者在计算时首先会转换为int类型
注意:Java中可以将int型数值常量直接赋值给相应低级的byte,short,char型变量,
而不需要进行强制类型转换,只要不超出变量的数值范围.
二 布尔运算
& 逻辑与,|逻辑或,&&短路与 || 短路或
&& 和||可以实现"短路":当其根据第一个操作数的值已经能够确定整个表达式的结果时,
将跳出对第二个操作数值的计算,直接得出最终结果.如:在计算表达式"a && b"时,
如果a的结果为false,已经可以确定"与"的运算结果只能为false,于是不再计算操作数b的值,
而直接得出最终结果为false
三 流程控制语句break和continue的区别
1. break语句的作用是终止所在的switch语句或循环语句的运行,在循环语句中break语句的使用格式可分为两种:
break; //终止其所在的(内层)单层循环语句的运行
break <标签>; //在多层嵌套循环中,终止标签标记的外层循环的运行
2. continue语句的作用是结束所在的循环语句的本次运行,即跳过其后的循环体
语句,开始下一次循环.continue两种使用格式:
continue; //跳过其所在的(内层)单层循环的本次运行
continue <标签>; //在多层嵌套循环中,跳过标签标记的外层循环的本次运行,
开始下一次运行.
下面给出一个程序,仔细体会下continue的用法
/**
* 输出100到200之间的素数
* 使用continue语句跳过嵌套循环
*/
package com.javase;
/**
* @author johnston678
*
* @version 2009-03
相关文档:
当重载equals方法时,遵循惯例.
equals不是每个类都必须重载,当以下几个条件满足,可以不重载equals.
1. 类的实例只有同一个才被判为相等. 如Thread类.
2. 不用关心两个对象是否逻辑相等的时候,或是说比较对象没有意义.
3.父类已经重载了equals,而且父类的equals也适用于子类,子类就不用重载equals.
4.这是一个私有类或� ......
一、cookie机制和session机制的区别
*****************************************************************
具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案。
同时我们也看到,由于才服务器端保持状态的方案在客户端也需要保存一个标识,所以session
机制可能需要借 ......
在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。
如果使用了反向代理软件,将http://192.168.1.110:2046/ 的URL反向代理为http://www.xxx.com/ 的URL时,用request.getRemoteAddr()方法获取 ......
ThreadLocal的核心思想很简单:为每个独立的线程提供一个变量的副本。
ThreadLocal则使用了“拷贝副本”的方式,人人有份,你用你的,我用我的,大家互不影响,是“以空间换时间”。每个线程修改变量时,实际上修改的是变量的副本,不怕影响到其它线程。
& ......
Java梦开始的地方
希望是坚韧的拐杖,忍耐是旅行袋,携带它们,人可以登上永恒之旅途。--Bertrand Russell
Java:高效快捷跨平台可移植
程序员:Java语言本身(基本语法和概念,原理应用);Java应用开发
书籍:Java编程思想;Java教程;深入开发Java Web开发内幕等
梦开始的地方
01一门语言精通的必要条件
02操作系� ......