1、算术操作符
Java的基本算术操作符与其他大多数程序设计语言是相同的。其中包括加号(+)、减号(-)、除号(/)、乘号(*)以及取模操作符(%,它从整数除法中产生余数)。整数除法会直接去掉结果的小数位,而不是四舍五入的圆整结果。
Java也使用一种来自C和C++的简化符号同时进行运算与赋值操作。这用操作符后紧跟一个符号来表示,它对于Java中的所有操作符都适用,只要其有实际意义就行。例如,要将x加4,并将结果赋回给x,可以这么写:x += 4。
要生成数字,程序首先会创建一个Random类的对象。如果在创建过程中没有传递任何参数,那么Java就会将当前时间作为随机数生成器的种子,并由此在程序每一次执行时都产生不同的输出。
通过在创建Random对象时提供种子(用于随机数生成器的初始化值,随机数生成器对于特定的种子值总是产生相同的随机数序列),就可以在每一次执行程序时都生成相同的随机数,因此其输出是可验证的。
通过Random类的对象,程序可生成许多不同类型的随机数字。做法很简单,只需调用方法nextInt()和nextFloat()即可(也可调用nextLong()和nextDouble())。传递给nextInt()的参数设置了所产生的随机数的上限,而其下限为0,但是这个下限并不是我们想要的,因此它会 产生除0的可能性,因此我们对结果做了加1操作。
一、一元加、减操作符
一元减号(-)和一元加号(+)与二元减号和加号都使用相同的符号。根据表达式的书写形式,编译器会自动判断出使用的是哪一种。例如语句: x = -a ;的含义是显然的。编译器能正确识别下述语句: x = a * -b ;但读者会被搞糊涂,所以有时更明确的写成:
x = a * ( -b) ; 一元减号用于转变数据的符号,而一元加号只是为了与一元减号相对应,但是它唯一的作用仅仅是将较小类型的操作数提升为int。
2、自动递增和递减
递增和递减运算是两种相当不错的快捷运算(常称为“自动递增”和“自动递减”运算)。其中,递减操作符是“--”,意为“减少一个单位”;递增操作符是“++”,意为“增加一个单位”。递增和递减操作符不仅改变了变量,并且以变量的值作为生成的结果。
这两个操作符各有两种使用方式,通常称为“前缀式”和“后缀式”。“前缀递增“表示”++“操作符位于变量或表达式的前面;而”后缀递增“表示”++“操作符位于变量或表达式的后面。类似的,“前缀递减“意味着”--“操作符位于变量或表达式的前面;而”后缀递减“意味着”--“操作符位于变量或表达式的后面。对于前缀递增和前缀递减,会先执行运算,再生成值。而对于后缀递增和后缀递减,会先生成值,再执行运算。
它们是除那些涉及赋值的操作符以外,唯一具有”副作用“的操作符。也就是说,它们会改变操作数,而不仅仅是使用自己的值。