一、System:    一个java.lang包中的静态工具类。

    三大字段:
      static PrintStream err “标准”错误输出流。
      static InputStream in “标准”输入流。
      static PrintStream out “标准”输出流。

    其他常用方法:

      描述系统信息:
          获取系统属性信息: static Properties getProperties();
                      (Properties是Hashtable的子类,也就是Map 的子类,于是可以使用Map集合中的方法获取其中的信息
                      该集合中存储的都是字符串,没有泛型定义。)

                    static String getProperty(String key) 获取指定键指示的系统属性。
                      如: System.getProperty("os.name"); : 返回系统名称。

          设置系统属性信息:
                    static String setProperty(String key, String value) :
                      设置一个系统属性信息,并返回原来该键上的信息,如果原来没有该键、或者该键上没有信息,返回null。

          动态加载属性信息: 在启动jvm的时候动态加入属性信息, dos中输入命令时: java -D键字符串=值字符串 class文件名。

          注意: 系统信息都是成键值对存在的。
              这类语句作用,判断操作系统信息,为程序运行做准备,

二、Runtime

     每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接。可以通过 getRuntime 方法获取当前运行时。
     应用程序不能创建自己的 Runtime 类实例。

        static Runtime getRuntime() :返回与当前 Java 应用程序相关的运行时对象。
                        通过调用此方法拿到该对象,于是就可以调用该类中的方法。(这是单列设计模式)
          如: Runtime r = Runtime.getRnutime();

        Process exec(String command) : 在单独的进程中执行指定的字符串命令。(能在本线程中打开一个其他程序,返回一个Process对象)
          Process: 一个对象,表示这被打开的进程(只能通过一些方法拿到这个对象,java不能建立这个类对象,其由
               Windows操作系统建立)

  示例: Runtime r = Runtime.getRnutime(); //获得当前运行时对象。
      Process p1 = r.exec("notepad.exe.Test.java"); //用记事本打开一个Test.java文件,并使用p1记录这个进程(不写程序路径时要保证其在path下,)
      Process p2 = r.exec("F:\\qq音乐\\qqyyueanzhuang\\QQMusic1297.11.5.44\\QQMusic.exe"");//打开QQ音乐,

                                                    //因为转义字符的原因,要使用双斜线表示路径。
      p1.destroy(); //关闭两个程序。
      p2.destroy();

三、Date

    位置:java.util
    类 Date 表示特定的瞬间,精确到毫秒。

    Date类中相关联的类: SimpleDateFormat

    Date相关方法: 除了构造函数,一般不用,其toString返回一个英文的日期字符串,一般会需要对其进行转换。

            这就需要用到 java.text包中的 DateFormat 类

    DateFormat: 抽象类, 其有子类 SimpleDateFormat。

    SimpleDateFormat 常用方法:

          构造函数之一:SimpleDateFormat(String pattern) 用给定的模式和默认语言环境的日期格式符号构造 SimpleDateFormat
                          (pattern格式查找api表格)

    StringBuffer format(Date date):将传入date转换为构造函数中指定的格式,保存到StringBuffer中。

      代码示例:   Date d = new Date();
            System.out.println(d);
            SimpleDateFormat s = new SimpleDateFormat("yyy年MM月dd日Ehh:mm:ss"); (格式化多少就有多少内容)
            String s1 = s.format(d);
            System.out.println(s1);

四、Calendar

    位置: java.util

    抽象类, 其直接子类:GregorianCalendar

    Calendar中的方法:

    对象获取:
          构造方法:   protected Calendar() 构造一个带有默认时区和语言环境的 Calendar。
                  protected Calendar(TimeZone zone, Locale aLocale) 构造一个带有指定时区和语言环境的 Calendar。
            其为抽象类,protected权限的构造函数,只能被子类调用。(只能构造子类对象)

          返回对象:
                static Calendar getInstance() 使用默认时区和语言环境获得一个日历。
                static Calendar getInstance(TimeZone zone, Locale aLocale)使用指定时区和语言环境获得一个日历

                                              (可只传一个,另一个默认)。
                (此日历时间默认在当时瞬间)

          其他方法:   int get(int field) 返回给定日历字段的值。    字段表示方法: Calendar.YEAR

                void set(int year, int month, int date, int hourOfDay, int minute, int second)
                  设置字段 YEAR、MONTH、DAY_OF_MONTH、HOUR、MINUTE 和 SECOND 的值。
                  相对于将日历翻到指定位置。

                void add(int field, int amount) 根据日历的规则,为给定的日历字段添加或减去指定的时间量。
                  如: c.add(Canendar.DAY_OF_MOUTH,-1);

五、Math

    位置: java.lang

    工具类,全静态方法。
    字段: PI E

    方法: 大部分进行基本数学运算的方法都在其中。

      如:static double ceil(double a) 返回最小的(最接近负无穷大)double 值,该值大于等于参数,并等于某个整数(大于指定数的最小整数)。
        static double floor(double a) 返回最大的(最接近正无穷大)double 值,该值小于等于参数,并等于某个整数(小于指定数的最大整数)。
        static long round(double a) 返回最接近参数的 long。(四舍五入)
        static double pow(double a, double b) 返回第一个参数的第二个参数次幂的值。a的b次幂。
        static double abs(double a) 返回 double 值的绝对值。

      重:static double random() 返回带正号的 double 值,该值大于等于 0.0 且小于 1.0。(返回一个随机数)
              在第一次调用该方法时,它将创建一个新的伪随机数生成器,与以下表达式完全相同
              new java.util.Random
              之后,新的伪随机数生成器可用于此方法的所有调用,但不能用于其他地方。

      注: new java.util.Random 得到的随机数生成器还有许多关于随机数的操作方法。

      等

常用工具类(System,Runtime,Date,Calendar,Math)的更多相关文章

  1. 黑马程序员——JAVA基础之System,Runtime,Date,Calendar,Math

    ------- android培训.java培训.期待与您交流! ---------- System:  类中的方法和属性都是静态的. out:  标准输出,默认是控制台. in:标准输入,默认是键盘 ...

  2. 工具类System,Runtime,Math,Date,Calendar

    API--- java.lang.System: 属性和行为都是静态的. long currentTimeMillis(); // 返回当前时间毫秒值   exit();  // 退出虚拟机 Prop ...

  3. 黑马程序员_Java其他对象(System,Runtime,Date,Calendar,Marh-Random)

    System System类包含一些有用的类字段和方法(都是静态的).它不能被实例化. 在System类提供的设施中,有标准输入.标准输出和错误输出流:对外部定义的属性和环境变量的访问:加载文件和库的 ...

  4. PHP常用工具类

    <?php namespace isslib\Util; use think\Config; /** * 常用工具类 * User: xaxiong * Date: 2016/12/19 * T ...

  5. JavaEE-实验一 Java常用工具类编程

    该博客仅专为我的小伙伴提供参考而附加,没空加上代码具体解析,望各位谅解 1.  使用类String类的分割split 将字符串  “Solutions to selected exercises ca ...

  6. js常用工具类.

    一些js的工具类 复制代码 /** * Created by sevennight on 15-1-31. * js常用工具类 */ /** * 方法作用:[格式化时间] * 使用方法 * 示例: * ...

  7. Apache Commons 常用工具类整理

    其实一直都在使用常用工具类,只是从没去整理过,今天空了把一些常用的整理一下吧 怎么使用的一看就明白,另外还有注释,最后的使用pom引入的jar包 public class ApacheCommonsT ...

  8. javascript常用工具类整理(copy)

    JavaScript常用工具类 类型 日期 数组 字符串 数字 网络请求 节点 存储 其他 1.类型 isString (o) { //是否字符串 return Object.prototype.to ...

  9. commons-lang3-3.2.jar中的常用工具类的使用

    这个包中的很多工具类可以简化我们的操作,在这里简单的研究其中的几个工具类的使用. 1.StringUtils工具类 可以判断是否是空串,是否为null,默认值设置等操作: /** * StringUt ...

随机推荐

  1. SQL Server2012数据库开启远程连接

    在我们使用SQL Server数据库的时候很重要的一点就是开启数据库的远程连接,这是因为很多时候数据库部署在远程的服务器上会比较方便,而部署在客户端的话,由于客户端不固定,所以需要经常去部署,这样容易 ...

  2. Java使用RabbitMQ之公平分发

    发送消息: package org.study.workfair; import com.rabbitmq.client.Channel; import com.rabbitmq.client.Con ...

  3. 搭建YUM仓库

    概述 YUM 主要用于自动安装.升级 rpm 软件包,它能自动查找并解决 rpm 包之间的依赖关系.要功的使用 YUM 工具安装更新软件或系统,就需要有一个包含各种 rpm 软件包的 reposito ...

  4. python之旅六【第六篇】模块

    json和pickle 用于序列化的两个模块json,用于字符串 和 python数据类型间进行转换pickle,用于python特有的类型 和 python的数据类型间进行转换 json模块提供了四 ...

  5. mpvue——Error: EPERM: operation not permitted

    报错 $ npm run build > mpvue@ build D:\wamp\www\webpack\mpvue\my-project > node build/build.js w ...

  6. HDU5773-The All-purpose Zero-多校#41010-最长上升子序列问题

    只想到了朴素的n^2做法,然后发现可以用splay维护.于是调了几个小时的splay... splay的元素是从第二个开始的!第一个是之前插入的头节点! #include <cstdio> ...

  7. python基础成长之路三

    1,基础数据类型 总览 int :数字  用于计数,计算,运算等...1 , 2 , 3  , 100 , ... str :字符串  用户少量的数据储存,便于操作   "这就是字符串&qu ...

  8. codeforces1045B Space Isaac 【manacher】【差分】

    题目大意: 题目是将$[0,m)$的数划成了两个集合,其中一个集合的元素个数不超过$n$.问在第一个集合中选出的数加上第二个集合中选出的数的和中没有出现的数有哪些. 题目分析: 很有意思的一道题.方便 ...

  9. [CEOI2007] 树的匹配Treasury

    类型:树形 DP 传送门:>Here< 题意:给一棵树,你可以匹配有边相连的两个点,问你这棵树的最大匹配是多少,并且计算出有多少种最大匹配. 解题思路 首先树形Dp是很明显的,$f[i][ ...

  10. 【XSY2762】插线板 分块

    题目大意 有\(n\)个插线板,每个插线板会在\(l_i\)时刻初插入到队列中(队列是按插线板的编号排序的),\(r_i\)时刻末移除. 插入一个插线板时会对当前所有接在队列中这个插线的下一个插线板上 ...