常用工具类(System,Runtime,Date,Calendar,Math)
一、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)的更多相关文章
- 黑马程序员——JAVA基础之System,Runtime,Date,Calendar,Math
------- android培训.java培训.期待与您交流! ---------- System: 类中的方法和属性都是静态的. out: 标准输出,默认是控制台. in:标准输入,默认是键盘 ...
- 工具类System,Runtime,Math,Date,Calendar
API--- java.lang.System: 属性和行为都是静态的. long currentTimeMillis(); // 返回当前时间毫秒值 exit(); // 退出虚拟机 Prop ...
- 黑马程序员_Java其他对象(System,Runtime,Date,Calendar,Marh-Random)
System System类包含一些有用的类字段和方法(都是静态的).它不能被实例化. 在System类提供的设施中,有标准输入.标准输出和错误输出流:对外部定义的属性和环境变量的访问:加载文件和库的 ...
- PHP常用工具类
<?php namespace isslib\Util; use think\Config; /** * 常用工具类 * User: xaxiong * Date: 2016/12/19 * T ...
- JavaEE-实验一 Java常用工具类编程
该博客仅专为我的小伙伴提供参考而附加,没空加上代码具体解析,望各位谅解 1. 使用类String类的分割split 将字符串 “Solutions to selected exercises ca ...
- js常用工具类.
一些js的工具类 复制代码 /** * Created by sevennight on 15-1-31. * js常用工具类 */ /** * 方法作用:[格式化时间] * 使用方法 * 示例: * ...
- Apache Commons 常用工具类整理
其实一直都在使用常用工具类,只是从没去整理过,今天空了把一些常用的整理一下吧 怎么使用的一看就明白,另外还有注释,最后的使用pom引入的jar包 public class ApacheCommonsT ...
- javascript常用工具类整理(copy)
JavaScript常用工具类 类型 日期 数组 字符串 数字 网络请求 节点 存储 其他 1.类型 isString (o) { //是否字符串 return Object.prototype.to ...
- commons-lang3-3.2.jar中的常用工具类的使用
这个包中的很多工具类可以简化我们的操作,在这里简单的研究其中的几个工具类的使用. 1.StringUtils工具类 可以判断是否是空串,是否为null,默认值设置等操作: /** * StringUt ...
随机推荐
- python学习笔记(11)--测验3: Python基础语法(下) (第7周)
斐波那契数列计算 B 描述 斐波那契数列如下: F(0) = 0, F(1) = 1 F(n) = F(n-1) + F(n-2) 编写一个计算斐波那契数列的函数,采用递归方式,输出不超过n的所有斐波 ...
- 老男孩python学习自修第二十三天【多线程】
1. 线程的创建与运行 #!/usr/bin/env python # _*_ coding:UTF-8 _*_ from threading import Thread def foo(param1 ...
- 实体类注解错误:Could not determine type for: java.util.List
今天配置实体类注解时,出现以下错误: Caused by: org.hibernate.MappingException: Could not determine type for: java.uti ...
- 【NLP】大白话讲解word2vec到底在做些什么
转载自:http://blog.csdn.net/mylove0414/article/details/61616617 词向量 word2vec也叫word embeddings,中文名“词向量”, ...
- Android 模块化/热修复/插件化 框架选用
概念汇总 动态加载:在程序运行的时候,加载一些程序自身原本不存在的文件并运行这些文件里的代码逻辑.动态加载是热修复与插件化实现的基础. 热修复:修改部分代码,不用重新发包,在用户不知情的情况下,给ap ...
- 利用random模块生成验证码
random模块 该模块用于数学或者数据相关的领域,使用方法非常简单下面介绍常用的放法 1.随机小数 random.random() 2.随机整数random.randint(1,5) # 大于等于1 ...
- 使用java代码批量删除新浪微博
首先开骂,新浪微博@#@!,不经我同意就转发各种微博,制造垃圾,还不提供微博批量删除功能,摆明了的流氓行为,可耻可恨,遭人唾弃! SSLClient.java import org.apache.ht ...
- Android 下载App
转载:http://blog.csdn.net/aicpzl/article/details/52993074 通过DownloadManager来下载APK到本地,下载完成后收到广播再安装APK,可 ...
- C Looooops POJ - 2115 (exgcd)
一个编译器之谜:我们被给了一段C++语言风格的循环 for(int i=A;i!=B;i+=C) 内容; 其中所有数都是k位二进制数,即所有数时膜2^k意义下的.我们的目标时球出 内容 被执行了多少次 ...
- HDOJ5551 Huatuo's Medicine
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5551 题目大意:... 题目思路:乱搞?模拟? #include <stdio.h> vo ...