常用工具类(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 ...
随机推荐
- k8s调度器、预选策略及调度方式
一.k8s调度流程 1.(预选)先排除完全不符合pod运行要求的节点2.(优先)根据一系列算法,算出node的得分,最高没有相同的,就直接选择3.上一步有相同的话,就随机选一个 二.调度方式 1.no ...
- Fiddler-学习笔记-远程抓包
1 操作系统低于win7用 fiddler 2 win7 或win7以上版本,用 fiddler4片本 2 fiddler开关:左下角或点击F12控件fiddler开关,开=capturing 3 启 ...
- git在实际开发中的应用
PS: git操作实例(https://learngitbranching.js.org/?demo) 一, 创建分支,合并分支到master 1. 在远程仓库中创建master和test分支 2.本 ...
- Java多线程之静态代理
package org.study2.javabase.ThreadsDemo.staticproxy; /** * @Date:2018-09-18 静态代理 设计模式 * 1.真实角色 * 2.代 ...
- Serialize a Long as a String
今天在写接口的时候,用postman测试,返回数据与数据库一一对应,但是给前端返回的结果,除了主键id以外,其他都一样,如下 postman: { "unitPrice": nul ...
- Python——Flask框架——程序的基本结构
一.安装 pip install flask 二.初始化 from flask import Flask app = Flash(__name__) 三.路由:处理URL和函数之间的关系的程序称为路由 ...
- LODOP直接用base64码输出图片
Lodop中的ADD_PRINT_IMAGE,也可以直接输出base64码图片,不用加img标签,如果加了img标签,会被当做超文本对待,受浏览器引擎解析的影响. 什么时候使用base64码直接输出比 ...
- linode上切换Linux到FreeBSD
PS:不是真正的无缝切换,数据需要自己备份.还原. Linode官方给出了一篇文章:https://www.linode.com/docs/tools-reference/custom-kernels ...
- Spring Boot 构建电商基础秒杀项目 (十一) 秒杀
SpringBoot构建电商基础秒杀项目 学习笔记 新建表 create table if not exists promo ( id int not null auto_increment, pro ...
- 【NLP】Recurrent Neural Network and Language Models
0. Overview What is language models? A time series prediction problem. It assigns a probility to a s ...