几种常见类的使用(System,Runtime,Math,Date,Calendar,Random)
一:System
1.介绍
System:类中的方法和属性都是静态的。
out:标准输出,默认是控制台。
in:标准输入,默认是键盘。
2.properties
获取系统属性信息:Properties getProperties()
因为Properties是Hashtable的子类,也就是Map集合的一个子类对象。
那么可以通过map的方法取出该集合中的元素。
该集合中存储都是字符串。没有泛型定义。
3.程序--获取所有属性信息
import java.util.Properties;
public class Test75 {
public static void main(String[] args) {
Properties pro=System.getProperties();
for(Object key:pro.keySet()){
String value=(String)pro.get(key);
System.out.println(key+":"+value);
}
}
}
4.运行程序结果

5.制定属性以及根据属性得到值
import java.util.Properties;
public class Test76 {
public static void main(String[] args) {
Properties pro=System.getProperties();
System.setProperty("hehe", "hhahaha");
String str1=System.getProperty("hehe");
System.out.println("str1="+str1);
String str2=pro.getProperty("kkk");
System.out.println("str2="+str2);
String str3=pro.getProperty("os.name");
System.out.println("str3="+str3);
}
}
6.运行结果

二:Runtime
1.介绍
应用程序与运行环境的交互。
Runtime对象
该类并没有提供构造函数。
说明不可以new对象。那么会直接想到该类中的方法都是静态的。
发现该类中还有非静态方法。
说明该类肯定会提供了方法获取本类对象。而且该方法是静态的,并返回值类型是本类类型。
由这个特点可以看出该类使用了单例设计模式完成。
该方式是static Runtime getRuntime()
2.打开进程,然后关闭进程
//注意转义字符
import java.io.IOException;
public class Test77 {
public static void main(String[] args) throws Exception {
Runtime rt=Runtime.getRuntime();
Process pro=rt.exec("notepad E:\\java62\\demo1\\src\\Test66.java"); //注意转义字符
Thread.sleep(5000);
pro.destroy();
}
}
3.运行结果
5秒之后,进程关闭

三:Math
1.pow,random,Random
import java.util.Random;
public class Test78 {
public static void main(String[] args) {
show();
}
private static void show() {
//pow
Double sum=Math.pow(2, 3);
System.out.println("sum="+sum);
//random
int d = (int)(Math.random()*10+1); //1~10的随机数
System.out.println("d="+d);
//延伸,Random类中也可以生成随机数
Random r=new Random();
int rd=r.nextInt(10);
System.out.println("rd="+rd);
}
}
2.运行结果

四:Date
1.日期打印
import java.text.SimpleDateFormat;
import java.util.Date;
public class Test79 {
public static void main(String[] args) {
Date d=new Date();
/**
* 直接全部打印出来
*/
System.out.println("d="+d);
/**
* 将模式封装到SimpleDateformat对象中
*/
SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss");
String time=sdf.format(d);
System.out.println("time="+time); }
}
2.运行结果

3.Calemdar具体日期
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date; public class Test80 { public static void main(String[] args) {
//打印yyyy年
Date d=new Date();
SimpleDateFormat sdf=new SimpleDateFormat("yyyy");
String year1=sdf.format(d);
System.out.println("yar1="+year1);
//使用Calendar,包括年,月,星期
Calendar cal=Calendar.getInstance();
int year2=cal.get(Calendar.YEAR);
System.out.println("year2="+year2+"年");
int month2=cal.get(Calendar.MONTH);
System.out.println("month2="+(month2+1)+"月");//注意加1
int week2=cal.get(Calendar.DAY_OF_WEEK);
System.out.println("week2=星期"+week2);
//优化,查表法,更人性化
String[] mons = {"一月","二月","三月","四月"
,"五月","六月","七月","八月"
,"九月","十月","十一月","十二月"};
String[] weeks = {"","星期日","星期一","星期二",
"星期三","星期四","星期五","星期六",};
int index1 = cal.get(Calendar.DAY_OF_WEEK);
System.out.println(cal.get(Calendar.YEAR)+"年");
System.out.println(mons[index1]);
System.out.println(cal.get(Calendar.DAY_OF_MONTH)+"日");
System.out.println(weeks[index1]);
}
}
4.运行结果

5.修改时间,并知道具体时间
import java.util.Calendar;
public class Test81 {
public static void main(String[] args) {
Calendar c = Calendar.getInstance();
/*
* 可以设置时间,年月日
*c.set(2012,2,23);
*/
c.add(Calendar.DAY_OF_MONTH,-1);
printCalendar(c);
}
public static void printCalendar(Calendar c)
{
String[] mons = {"一月","二月","三月","四月"
,"五月","六月","七月","八月"
,"九月","十月","十一月","十二月"};
String[] weeks = {"","星期日","星期一","星期二",
"星期三","星期四","星期五","星期六",};
int index = c.get(Calendar.MONTH);
int index1 = c.get(Calendar.DAY_OF_WEEK);
sop(c.get(Calendar.YEAR)+"年");
sop(mons[index]);
sop(c.get(Calendar.DAY_OF_MONTH)+"日");
sop(weeks[index1]);
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}
6.运行结果

几种常见类的使用(System,Runtime,Math,Date,Calendar,Random)的更多相关文章
- 工具类System,Runtime,Math,Date,Calendar
API--- java.lang.System: 属性和行为都是静态的. long currentTimeMillis(); // 返回当前时间毫秒值 exit(); // 退出虚拟机 Prop ...
- System & Runtime &Math
package com.shushine.framework.第七章Java标准类库;/** * * <p> * 描述该类情况 {@link 代表跟谁有关系} * </p> * ...
- 关于JAVA System常见类的一些总结
一.JAVA System类概述 1.概述: System 类是一个抽象类,所有的字段和方法都是静态的,即不能被实例化.其中包含一些有用的类字段和方法,它不能被实例化.在 System 类提供的设施中 ...
- 适用于app.config与web.config的ConfigUtil读写工具类 基于MongoDb官方C#驱动封装MongoDbCsharpHelper类(CRUD类) 基于ASP.NET WEB API实现分布式数据访问中间层(提供对数据库的CRUD) C# 实现AOP 的几种常见方式
适用于app.config与web.config的ConfigUtil读写工具类 之前文章:<两种读写配置文件的方案(app.config与web.config通用)>,现在重新整理一 ...
- 疯狂java笔记(五) - 系统交互、System、Runtime、Date类
一.程序与用户交互(Java的入口方法-main方法): 运行Java程序时,都必须提供一个main方法入口:public static void main(String[] args){} publ ...
- System.Runtime.InteropServices.COMException 检索COM类工厂中CLSID{xxxxxxxxx}的组件时失败解决方法
iis7.5中设定应用程序池中<进程模型>中<标识>为localSystem 提示:System.Runtime.InteropServices.COMException: 命 ...
- C# 实现AOP 的几种常见方式
AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的中统一处理业务逻辑的一种技术,比较常见的场景是:日志记录,错误捕获 ...
- 解析XML文件的几种常见操作方法—DOM/SAX/DOM4j
解析XML文件的几种常见操作方法—DOM/SAX/DOM4j 一直想学点什么东西,有些浮躁,努力使自己静下心来看点东西,哪怕是回顾一下知识.看到了xml解析,目前我还没用到过.但多了解一下,加深点记忆 ...
- C# DataGridView绑定数据源的几种常见方式
开始以前,先认识一下WinForm控件数据绑定的两种形式,简单数据绑定和复杂数据绑定. 1. 简单的数据绑定 例1 using (SqlConnection conn = new SqlConnect ...
随机推荐
- AtCoder Grand Contest 009
AtCoder Grand Contest 009 A - Multiple Array 翻译 见洛谷 题解 从后往前考虑. #include<iostream> #include< ...
- 洛谷 P2245 星际导航 解题报告
P2245 星际导航 题目描述 sideman做好了回到Gliese 星球的硬件准备,但是sideman的导航系统还没有完全设计好.为了方便起见,我们可以认为宇宙是一张有N 个顶点和M 条边的带权无向 ...
- POJ 1511 Invitation Cards / UVA 721 Invitation Cards / SPOJ Invitation / UVAlive Invitation Cards / SCU 1132 Invitation Cards / ZOJ 2008 Invitation Cards / HDU 1535 (图论,最短路径)
POJ 1511 Invitation Cards / UVA 721 Invitation Cards / SPOJ Invitation / UVAlive Invitation Cards / ...
- Redis连接的客户端(connected_clients)数过高或者不减的问题解决方案
最近的项目上使用ServiceStack.Redis上了redis缓存,其中遇到了很多问题.. 比如说 某一天发现redis做的缓存竟然失效了,然后查了下日志 报错max number of cli ...
- String.format VS. StrSubstitutor VS. NamedParameterJdbcTemplate
在Java中,想要用一个字符串模块根据参数的不同来产生不同的字符串,主要有以下两种办法: Java String.format() 在JDK1.5中,String类新增了一个很有用的静态方法Strin ...
- eos交易同步过程和区块生产过程源码分析
交易同步过程 1 通过命令cleos调用 cleos transfer ${from_account} ${to_account} ${quantity} 发起交易2 eos调用chain_plugi ...
- mongodb 设置用户密码权限
1 设置管理员账户 use admindb.createUser({ user: "useradmin", pwd: "adminpassword", role ...
- SSIS系列文章收藏
http://blog.csdn.net/kk185800961/article/details/12398667 https://wenku.baidu.com/view/d16105abdd338 ...
- MySQL异步复制延迟解决
http://www.ttlsa.com/mysql/mysql-5-7-enhanced-multi-thread-salve/
- [转载]Supporting OData $inlinecount with the new Web API OData preview package
http://www.strathweb.com/2012/08/supporting-odata-inlinecount-with-the-new-web-api-odata-preview-pac ...