一、java 2个整数相除后会舍弃小数位,如下:
public class datatype { public static void main(String[] args) { String c = 3l + ""; //3后面待l,表示long System.out.println(c); int a = 1; int b = 2; System.out.println( a / b ); } }
结果:
二、取模
求余(取模):先整除再用被除数减去除数和商的积得到的差值就是余数。
1、例如 3%20
先整除 3/20 = 0;
再计算差值 3-20*0 = 3 所以余数就是3(也就是模)
2、例如 20%3
先整除 20/3 = 6;
再计算差值20 - 3*6 = 2 所以余数就是2(也就是模)
3、例如 -3%20;
先整除-3/20 = 0
再计算差值 -3 - 20*0 = -3 所以余数就是-3(也就是模)
4、例如-20%3
先整除 -20/3 = -6;
再计算差值 -20 -(-6*3)= -2所以余数就是-2(也就是模)
备注:
1、如果对负数取模,可以把模数负号忽略不记,如:5%-2=1。 但被模数是负数则不可忽略。此外,取模运算的结果不一定总是整数。
2、对于除号“/”,它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分。
例如:int x=3510;x=x/1000*1000; x的结果是?
3、“+”除字符串相加功能外,还能把非字符串转换成字符串.例如:System.out.println("5+5="+5+5); //打印结果是?5+5=55
4、以下二者的区别:
System.out.println(‘*‘ + ‘\t‘ +‘*‘); \\输出93,因为是3个char类型的相加,会使用ASCII码对应的数字进行相加
System.out.println("*" + ‘\t‘ +‘*‘); \\输出* * ,有字符串的+后续都变为字符串。
三、++a 和 a++ 的区别
public class datatype { public static void main(String[] args) { int a = 0; int b = a++; System.out.println( a); System.out.println( b); int c = 2; int d = ++c; System.out.println(c); System.out.println(d); } }
结果如下:
计算规则:
a=0 b=a++ 这个时候先取值后运算,也就是b 取值为a 也就是0(先不理会后面的++),所以得出b=0,然后接下来a 自己++,所以a=1;
c=2 d=++c 这个时候先运算后取值,也就是d 等于1+c也就是1+2=3,d就是3;然后最后的c也是3(java中有一般都是取最后的值)
’
原文:https://www.cnblogs.com/wzwzzzzz/p/12444828.html