zoukankan      html  css  js  c++  java
  • java工具类--数学相关;Scanner类 System类

    参考:https://docs.oracle.com/javase/8/docs/api/index.html

    Math

    1.所属的包java.lang

    2.Math构造方法是私有的 我们不能直接调用创建对象;

    3.由于Math中提供的属性及方法都是static 不需要创建对象;

    4.常用方法;

      abs(a) 返回给定数字的绝对值 参数 int long float double;;

      ceil(a) floor(a) rint(a) round(a)

      max(a,b) min(a,b) 参数 int long float double;

      pow(a,b);a的b次方法 (参数double 返回值double)

      sqrt(a);开平方根;(参数double 返回值double)

      random() ;随机产生[0,1)的double类型值;0.000---0.999

    (int)(Math.random()*10);//产生0-9之间的随机整数

    (Math.random()*6)+5;//5.0-10.9之间的小数;//0.99*6=5.4...产生小数的时候精确程度可能有些损失;

    public class Test{
    	public static void main(String[] args){		
    		System.out.println(Math.ceil(1.4));//2.0 向上取整,返回double类型
    		System.out.println(Math.floor(1.4));//1.0 向下取整
    		System.out.println(Math.rint(1.4));//1.0 临近的整数,如果距离一样,则返回偶数
    		System.out.println(Math.round(1.4));//1 //四舍五入的整数		
    	}
    }
    

     

    Random类

    1.在java.util包中的类 需要import导入

    2.没有任何继承关系 默认继承Object类

    3.查找构造方法-->如何创建对象;

    4.类中提供的常用方法;

      r.nextInt();随机产生int取值范围的整数 有正有负

      r.nextInt(int bound);随机产生一个[0-bound)整数

        注意bound必须为正数 否则会出现如下的运行时异常

        

       r.nextFloat() 随机产生一个[0.0-1.0)

      r.nextBoolean() 随机产生一个boolean值 true false

    import java.util.Random;
    import java.util.UUID;
    public class Test{
    	public static void main(String[] args){
    		Random a=new Random();
    		int value=a.nextInt(10);//[0-10)		
    		System.out.println(value-10);
    		System.out.println(UUID.randomUUID().toString());//数据库表格主键		
    	}
    }
    

      

    UUID类

    1.所属的包 java.util 需要import 导入

    2.没有任何继承关系 默认继承Object类

    3.构造方法有 没有无参数的 我们通常不会创建对象

    System.out.println(UUID.randomUUID().toString());//产生一个32位的随机元素;数据库表格主键

    BigInteger类 大整数   long -2的63次方~2的63次方-1

    1.所属的包java.math 需要import导入

    2.继承自Number

    3.如何创建对象 提供的构造方法全部都是带参数的

      通常利用带String参数的构造方法创建这个类的对象

      BigInteger bi=new BigInteger("123");

    4.类中的常用方法

      做四则运算

      add() subtract() multiply divide()

    5.小例子 设计一个方法 用来计算给定数字的阶乘 

    import java.math.BigInteger;
    public class Test{
    	public BigInteger jieCheng(int num){
    		BigInteger rs=new BigInteger("1");
    		for(int i=1;i<=num;i++){
    			rs=rs.multiply(new BigInteger(i+""));
    		}
    		return rs;
    	}
    	public static void main(String[] args){
    		Test a=new Test();
    		BigInteger result=a.jieCheng(15);
    		System.out.println(result);
            }
    }
    

      

    BigDecimal 类 超过double取值范围

    1.所属的包 java.math包

    2.继承Number类

    3.通常也是可以通过带String参数 构建对象

    4.类中的常用方法

      做四则运算

      add() subtract() multiply divide()

    import java.math.BigDecimal;
    public class Test{
    
    	public static void main(String[] args){
    		BigDecimal d=new BigDecimal("123.456");
    		d=d.setScale(2,BigDecimal.ROUND_DOWN);//(位数,设置模式)向下取整
    		System.out.println(d);
            }
    }
    

      

     将小数点之前和之后的位数都能处理的类--格式化

    DecimalFormat //四色五入

    1.所属的包 java.text

    2.import 导入才能使用

    3.通过带String参数的构造方法创建一个格式化对象 0 #;0该位无数字则补0;#该位无数字则空着;

    4.调用format方法将一个小数格式化成一个字符串

    import java.text.DecimalFormat;
    public class Test{
    	public static void main(String[] args){
    		DecimalFormat a=new DecimalFormat("000.###");
    		String b=a.format(12.45);
    		System.out.println(b);
            }
    }
    

     

     Scanner类

    1.所属的包java.util包 需要import导包

    2.通过一个带输入流的构造方法创建对象

    3.常用方法 nextInt() nextFloat() next() nextLine()

    System类

    1.所属的包java.lang包 不需要导入

    2.不需要创建对象 通过类名就可以访问

    3.有三个属性及若干的方法

      三个属性 out in err

      方法gc() exit(0); currentTimeMills() //毫秒值

    public class Test0516{
    	public static void main(String[] args){
    		long t=System.currentTimeMillis();
    		System.out.println(t);
    	}
    }
    

     

     

    越努力,越幸运!!! good good study,day day up!!!
  • 相关阅读:
    WPF窗体设计不符合微软自己的UX Guide
    NUnit测试WPF程序的一个小技巧
    Windows Vista中五花八门的菜单赏析
    忙碌文档
    怎样做才能算是一个UX良好的软件
    编写帮助文档经验总结
    [WPF Bug清单]之(7)——顽固的Error Template
    让NSIS生成的安装包在静默安装时从命令行窗口输出安装信息
    [WPF Bug清单]之(9)——消失的光标
    [提个醒] C#中yield return的小缺点
  • 原文地址:https://www.cnblogs.com/canglongdao/p/12899525.html
Copyright © 2011-2022 走看看