java运算注意事项】的更多相关文章

/* 对于byte.short.char.插入三种类型来说,如果右侧固执的数值没有超过范围,那么java编译器就会自动隐含地位我们 补上一个(byte) ,(short),(char) 1.如果没有超过左侧的范围,编译器补上强转 2.如果超过了左侧范围,那么直接编译报错 */ public class Demo02Notice{ public static void main(String[] args){ //右侧确实是一个int数字,但是没有超过左侧的范围,就是正确的 // int————>…
1.表达式中的自动类型提升: 表达式求值时,Java自动的隐含的将每个byte.short或char操作数提升为int类型,这些类型的包装类型也是可以的. 例如:short s1 = 1; s1 = s1 + 1; s1+1运算中的操作数s1会被自动提升为int类型,s1+1运算结果会成为int类型,再赋值给short类型的s1时,编译器会报告需要强制转换类型的错误.需要改为short s1=1; s1=(short)(s1+1);结果就是short类型. 例如:short s1 = 1; s1…
 Java编程中  BigDecimal进行除法divide运算时,如果结果不整除,出现无限循环小数.则会抛出以下异常: java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result. 应用场景:一批中供客户的单价是1000元/年,如果按月计算的话1000/12=83.3333333333.... 解决之道:就是给divide设置精确的小数点divid…
情绪: 灵活:让标准成为价格值.为了给你一个想法和标准,你可以有一个不同的使用.不是死扣定理.决这个问题. 看书:分两类,一类依据知识点进行罗列.并且结构清晰,能够看完一章有选择进行总结(不是笔记,总结是带有自己理解的),一类是零乱可是重要.须要边看边划出重要点(重要点是你还未遇到的坑或者知识点),然后看完一章进行总结. 千万不要坚定地觉得什么方式快.什么方式慢,一定要讲究场景. (存在即合理) 一切在于场景与需求,十分须要.但也能够在某些情况下放弃. (性能,优化) 变化都是使用简单的基础知识…
java在运算的时候,会存在数据类型的转换,其中一种是自动类型转换,也称为隐式类型转换,这种转换需要满足一定的条件:     1.这两种类型是兼容的,例如同时都是整数类型或者都是数字类型     2.目的类型数的范围要大于来源数据的范围     运算时数据类型转换还有一种是强制类型转换,也称为显示类型转换,这种转换有的时候会发生截断和缩小,例如将一个小数强制转换成整数,则会丢弃小数部分.     所有byte型和short型在运算时会自动转换为int型,两个byte型运算的结果是int型而不是b…
生活发生的一切,才会促使着我继续前行,今天继续更新哦,看书中的代码练习. 例子1  引入net.mindview.util.Print.* ,方便打印结果. package com.date0529; import java.util.Date; //需要引入类库,并且配置ClassPath环境变量中添加该代码目录树的根目录 import static net.mindview.util.Print.*; public class Test_0529_Demo01 { public static…
1. 从左往右的计算顺序   与C/C++不同的是,在Java中,表达式的计算与结果是确定的,不受硬件与环境的影响.如: int i = 5; int j = (i++) + (i++) +(i++);   在C/C++中,这个例子的运算结果将会根据不同的开发环境而不同.Turbo C下,j的值是15:在VC下,j的值是 18.   在Java中,表达式的计算顺序是从左往右的,也就是先计算左侧的结果,再计算右侧的结果.上面的例子计算结果就一定是 18.也就是说,右侧(i++)表达式使用的 i 的…
异常的注意事项:   1,子类在覆盖父类方法时,父类的方法如果抛出了异常, 那么子类的方法只能抛出父类的异常或者该异常的子类.   2,如果父类抛出多个异常,那么子类只能抛出父类异常的子集.     简单说:子类覆盖父类只能抛出父类的异常或者子类或者子集.    注意:如果父类的方法没有抛出异常,那么子类覆盖时绝对不能抛,就只能try .     在面试中经常会问到Exception和RuntimeException区别? Exception在程序中必须使用try...catch 进行处理: R…
/** * @Title: EncrypAES.java * @Package com.weidinghuo.payment.util * @Description: TODO(用一句话描述该文件做什么) * @author liyongdong * @date 2016年8月17日 下午2:45:49 */package com.weidinghuo.payment.util;import java.io.UnsupportedEncodingException;import java.sec…
Java JDK 提供了java.util.Calendar来处理日期和时间.Calendar是一个抽象类,是所有日历的模板,因此我们可以继承Calendar来实现其他的历法(比如阴历). Java提供了一种Calendar的默认实现java.util.GregorianCalendar格里高利日历(公历),使用Calendar.getInstance();获取的就是默认的GregorianCalendar. Calendar与Date的互相转换. 1.如果Calendar没有设置相关的值,就是…