美文网首页Java Web知识Java程序栈
生成两个数,[0-100],然后输出,然后实现用一个int类型的

生成两个数,[0-100],然后输出,然后实现用一个int类型的

作者: 一直想上树的猪 | 来源:发表于2018-12-03 12:01 被阅读3次

思路:可以使用num 高16bit 保存 a 。低16bit 保存b 然后输出 num ,然后再将 a,b 从 num 中解析出来。

方法一

import java.util.Random;
public class TestRandom1{
    public static void main(String[] args){
        //定义取值区间
        final int MIN = 0;
        final int MAX = 101;
        //创建用于得到随机数的对象
        Random random = new Random();
        //得到随机数,并得到正整数   
        int ran1 = (random.nextInt()>>>1)%(MAX-MIN)+MIN;
        int ran2 = (random.nextInt()>>>1)%(MAX-MIN)+MIN;
        System.out.println("ran1 = " + ran1);
        System.out.println("ran2 = " + ran2);
        //打印 ran1 和 ran2的二进制形式
        System.out.println(Integer.toBinaryString(ran1));
        System.out.println(Integer.toBinaryString(ran2));
        //定义用于保存 ran1 和 ran2 的变量 
        int ranNum = 0;
        //ran1 保存在低16位 
        ranNum += ran1;
        //ran2 保存在高16位
        ranNum += (ran2 << 16);
        //打印ranNum 的二进制形式
        System.out.println(Integer.toBinaryString(ranNum));
        
        //将ranNum 中的保存的两个数分别打印
        System.out.println("低16位表示的数为:" + (ranNum&0xffff));
        System.out.println("高16位表示的数为:" + (ranNum>>16));
        
    }
}

方法二

方法二

相关文章

网友评论

    本文标题:生成两个数,[0-100],然后输出,然后实现用一个int类型的

    本文链接:https://www.haomeiwen.com/subject/guqycqtx.html