几种常见类的使用(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 ...
随机推荐
- 【bzoj4066】 简单题
http://www.lydsy.com/JudgeOnline/problem.php?id=4066 (题目链接) 题意 维护一个矩阵,两个操作,给某一个元素加上A,求其中一个子矩阵的元素之和.强 ...
- Atcoder Grand 012 C - Tautonym Puzzle
题意: 构造一个字符串,使得这个字符串有只有n个形如AA这样的子序列. 神TM构造题不会做,, 我们构造一个长度为2*m的字符串,前m个是一个1-m的排列,后m个就是按顺序1-m. 这样这个串里符合要 ...
- [八省联考2018]林克卡特树lct——WQS二分
[八省联考2018]林克卡特树lct 一看这种题就不是lct... 除了直径好拿分,别的都难做. 所以必须转化 突破口在于:连“0”边 对于k=0,我们求直径 k=1,对于(p,q)一定是从p出发,走 ...
- C++中this指针
原文 . this指针的用处: 一个对象的this指针并不是对象本身的一部分,不会影响sizeof(对象)的结果.this作用域是在类内部,当在类的非静态成员函数中访问类的非静态成员的时候,编译器会自 ...
- python---补充django中文报错(1),Django2.7使用sys.setdefaultencoding('utf-8'),以及使用reload(sys)原因
SyntaxError at /blog/ news/story Non-ASCII character , but no encoding declared; see http://python.o ...
- 用python处理文本,本地文件系统以及使用数据库的知识基础
主要是想通过python之流的脚本语言来进行文件系统的遍历,处理文本以及使用简易数据库的操作. 本文基于陈皓的:<程序员技术练级攻略> 一.Python csv 对于电子表格和数据库导出文 ...
- 史上最全的浏览器 CSS & JS Hack 手册
浏览器渲染页面的方式各不相同,甚至同一浏览器的不同版本(“杰出代表”是 IE)也有差异.因此,浏览器兼容成为前端开发人员的必备技能.如果有一份浏览器 Hack 手册,那查询起来就方便多了.这篇文章就向 ...
- 详谈ASP.NET的DataReader对象
最近频繁用到了DataReader这个对象,其实对于DataReader,之前也用到过,说实话我个人觉得很不好懂.相比之下觉得DataSet对象好用的多,但是有时取出的数据不需要很多的时候,DataR ...
- JavaScript编写风格指南 (一)
//参考<编写可维护的Javascript> 一:缩进// 第一行的层级由4个空格组成,避免使用制表符tab进行缩进 //好的写法if (true) { doSomething() ...
- dialog 菜单
dialog 菜单 # 默认将所有输出用 stderr 输出,不显示到屏幕 使用参数 --stdout 可将选择赋给变量 # 退出状态 0正确 1错误 窗体类型 --calendar # 日历 --c ...