6.5. 数字与随机数类

一. 数字类

java.text.DecimalFormat java.math.BigDecimal包下

1. 数字格式化

java.text.DecimalFormat专门负责数字格式化的
语法格式: DecimalFormat df = new DecimalFormat("数字格式")
数字的格式有哪些?

  • # 代表任意数字
  • , 代表千分位
  • . 代表小数点
  • 0 代表不够时补位
import java.text.DecimalFormat;


public class DecimalFormaText {

    public static void main(String[] args) {
    
        DecimalFormat df = new DecimalFormat("####,###.##");//表示加入千分位,保留两个小数
        String s = df.format(1234.56789);
        System.out.println(s);

        DecimalFormat df2 = new DecimalFormat("###,###.0000");//保留四位小数,不够补上0
        String s2 = df2.format(1234.56);
        System.out.println(s2);
    }
}
image.png|325

二. 高精度BigDecimal

BigDecimal 属于大数据,精度很高。不属于基本数据类型,属于java对象(引用数据类型)。这是SUN公司提供的一个类,专门使用在财务软件中

java.math.BigDecimal包中

        BigDecimal v1 = new BigDecimal(100);
        BigDecimal v2 = new BigDecimal(200);
        BigDecimal v3 = v1.add(v2);//v1和v2都是引用,不能直接用+求和,调用方法求和
        System.out.println(v3);

        BigDecimal v4 = v2.divide(v1);
        System.out.println(v4);
image.png|475

三. Random类

Random位于java.util包下,可以产生随机数。

import java.util.Random;

public class RandomText {
    public static void main(String[] args) {
        //创建随机数对象
        Random random = new Random();

        //随机产生一个int类型取值范围内的数字。
        int num = random.nextInt();
        System.out.println(num);

        //产生[0~100]之间的随机数。不能产生101
        //nextInt翻译为:下一个int类型的数据是101,表明只能取到100
        int num2 = random.nextInt(101);
        System.out.println(num2);

    }
}
image.png|475

1. 生成5个不重复的随机数

编写程序,生成5个不同的随机数。重复的话重新生成  
最终生成的五个随机数放到数组当中,要求数组中这5个随机数不重复
import java.util.Arrays;
import java.util.Random;

public class RandomText {
    public static void main(String[] args) {

        //创建一个Random对象
        Random random = new Random();

        //准备一个长度为5的一维数组
        int[] arr = new int[5];
        for (int i = 0; i < arr.length; i++) {
            arr[i] = -1;
        }

        int index = 0;
        //while循环,生成随机数
        while (index < arr.length) {
            //生成随机数
            int num = random.nextInt(101);
            //判断arr数组中有没有num
            //如果没有这个num,就放进去
            if (!contains(arr, num)) {
                arr[index++] = num;
            }

        }

        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }


    }

    /**
     * 单独编写一个方法,这个方法可以判断数组中是否包含某个元素
     *
     * @param arr 数组
     * @param key 元素
     * @return true表示包含,false表示不包含
     */
    public static boolean contains(int[] arr, int key) {
        for (int i = 0; i < arr.length; i++) {
            if (key == arr[i]) {
                return true;
            }
        }
        return false;
    }
}
image.png|350

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇