今天学习了Java语言的运算符,包括了算数运算符,自加减运算符,比较运算符、逻辑运算符。并针对其语法特点。写了一下代码
算术运算符
+、-、*、/、%、++、–
整除:参与运算的双方都是整数 10/3=3而不是3.33333
10./3=3.333…这里由于10.是浮点数,则3会自动转换为大类型并参与计算,所以最终是 10.0/3.0的计算结果:
int kk=3;
int res=(kk/2); //没有语法错误,因为除数和被除数都是整数,所以计算结果为整数
System.out.println(res);
//如果需要计算小数部分,则除数或者被除数之一必须为非整数
3./2=1.5;
double res=(1.*kk/2); //因为1.是double类型的浮点数,所以计算结果一定是浮点数
计算次序为先乘除后加减,如果优先级一致,则自动从左向右进行计算10+2*5=20
%求余(取模) 10%3=1实际就是10除以3求余数
//假设总行数为10行,每页3行,如何计算需要多少页进行显示
int rowsNum = 12;// 总行数
int rowsPerPage = 3;// 每页行数
int pageNum = rowsNum / rowsPerPage;// 总页码数
System.out.println(pageNum);// 由于整除的问题,所以计算结果为3,这样就会有数据丢失
if(rowsNum%rowsPerPage!=0)
pageNum=pageNum+1;
System.out.println("最终结果为:"+pageNum);
注意:求余计算可以用于浮点数。浮点数没有整除的概念,只能针对计算结果进行强制类型转换(窄化操作)
double dd=-12.3; //求余计算中符号不参与计算,所以计算结果为-2.4
System.out.println(dd%3.3); //执行结果为2.4000000000000012
++和–是单目运算符
i++等价于i=i+1、i–等价于i=i-1
double k = 100;
k--;// k=k-1;
System.out.println(k);
i++是先取值后计算,++i是先计算后取值
int k = 100;
System.out.println(k++);//100 先获取k的当前值,然后再进行加1计算
System