《Java编程思想》笔记03-操作符

  1. Random
  2. 指数计数法
  3. 位操作
    1. 按位操作符
    2. 移位操作符
    3. 进制转换

Random

在创建 Random 对象时提供种子(用于随机数生成器的初始化值,随机数生成器对于特定的种子值总是产生相同的随机数列)。

import java.util.Random;
public class RandomTest {
    public static void main(String[] args) {
        // 多次执行该程序,总是打印58
        Random random = new Random(47);
        System.out.println(random.nextInt(100));
    }
}

指数计数法

public class ExpTest {
    public static void main(String[] args) {
        float expFloat = 1.39e-43f;
        expFloat = 1.39E-43f;
        System.out.println(expFloat); // 1.39E-43
        double expDoble = 47e47d;
        double expDoble2 = 47e47;
        System.out.println(expDoble); // 4.7E48
    }
}

位操作

按位操作符

正数原码补码反码都相同,都等于它本身。

负数的补码是:符号位为 1,其余各位求反,末位加 1。负数的反码是:符号位为 1,其余各位求反,但末位不加 1。也就是说,反码末位加上 1 就是补码。

任何信息在计算机中都是以二进制的形式保存的,&|^除了可以作为逻辑运算符,也可以做为位算符。
它们对两个操作数中的每一个二进制位都进行运算,0 当做 false,1 当做 true。

& :将两个二进制数每一位进行 & 运算,两边都为 1 结果才为 1,只要有一边是 0,结果就为 0。
| :将两个二进制数每一位进行 | 运算,两边都为 0 结果才为 0,只要有一边是 1,结果就为 1。
^ :将两个二进制数每一位进行 ^ 运算,只要两边不同结果就为 1,相同则为 0。^ 两次 结果为原数 6 ^ 3 ^ 3 = 6
~ :取反操作符,一元操作符,按位“非”生成与输入位相反的值——若输入 0,则输出 1;输入 1,则输出 0。

移位操作符

<< :左移,将二进制的每一位向左移,低位补 0。左移几位就相当于乘以 2 的几次方。
>> :右移,将二进制的每一位向右移,原来高位是 0 就补 0,原来高位是 1 就补 1。右移几位就相当于除以 2 的几次方。
>>> :无无符号右移,将二进制的每一位向右移,高位补 0。正数移动没区别,负数移动后变为正数。

进制转换

Integer 类提供进制转换的方法。

static String toBinaryString(int i)
        以二进制(基数 2)无符号整数形式返回一个整数参数的字符串表示形式。
static String toHexString(int i)
        以十六进制(基数 16)无符号整数形式返回一个整数参数的字符串表示形式。
static String toOctalString(int i)
        以八进制(基数 8)无符号整数形式返回一个整数参数的字符串表示形式。


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 bin07280@qq.com

文章标题:《Java编程思想》笔记03-操作符

文章字数:685

本文作者:Bin

发布时间:2018-03-19, 20:18:13

最后更新:2019-08-06, 00:45:11

原始链接:http://coolview.github.io/2018/03/19/Java%E7%BC%96%E7%A8%8B%E6%80%9D%E6%83%B3/%E3%80%8AJava%E7%BC%96%E7%A8%8B%E6%80%9D%E6%83%B3%E3%80%8B%E7%AC%94%E8%AE%B003-%E6%93%8D%E4%BD%9C%E7%AC%A6/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录