JAVA学习第四十五课 — 其它对象API(一)System、Runtime、Math类
一、System类
1.
static long currentTimeMillis() 返回以毫秒为单位的当前时间。
实际上:当前时间与协调世界时 1970 年 1 月 1 日午夜之间的时间差(以毫秒为单位測量)。
long time = 1414069291407l;//long型 后面加l
System.out.println(time);
2.
static void exit(int status)终止当前正在执行的 Java 虚拟机。
static void gc()执行垃圾回收器
3.重点
staticProperties getProperties 确定当前的系统属性。
import java.util.Properties;
import java.util.Set; public class Main
{
//获取当前操作系统的换行符
public static final String LINE_SEPARATOR = System.getProperty("line.separator");
public static void main(String[] args) {
//获取系统属性信息。并存储到Properties集合中
//properties集合存储的都是String类型的键值对。包java.util.Hashtable<Object,Object>
//最好使用自己的存储和取出方法来完毕元素操作
/* Set<String> stringPropertyNames()
返回此属性列表中的键集。当中该键及其相应值是字符串。假设在主属性列表中未找到同名的键。则还包含默认属性列表中不同的键。 */ Properties pro = System.getProperties();
Set<String> set = pro.stringPropertyNames();
for (String string : set) {
String value = pro.getProperty(string);//取键得值
System.out.println(string+"-:-"+value);
}
//给系统设置属性信息
System.setProperty("myname", "xxxxxx");//这些信息是全局,不论什么程序都能够调用
}
}
二、Runtime类
在查看API文档的时,非常清晰的看到。Runtime没有构造函数(说明无法创建对象),而方法摘要中却有非静态的方法,当中有一个静态的getRuntime()方法。说明Runtime类是利用了单例设计模式设计的。
import java.io.IOException; public class Main
{ public static void main(String[] args) throws IOException, InterruptedException {
Runtime r = Runtime.getRuntime();//返回一个进程
//execute : 运行 xxxx.exe,调用本地一个程序,注意抛异常
//r.exec("notepad.exe");//这样写会先在当前路径下找,找不到然后会去pass路径下找
//指定路径
//r.exec("c:\\xxx\\LoL.exe");注意转移字符
r.exec("notepad.exe C:\\HelloWorld.java");//用XX程序解析XXX文件,注意文件要匹配
Process p = r.exec("notepad.exe");
Thread.sleep(1000);//显示一秒,杀掉,注意抛异常
p.destroy();// 杀掉子进程
}
}
三、Math类
public final class Math
注意不能被继承
Math类涵盖众多数学函数。全然能够挑战所学。Math方法都是静态的
PI 圆的周长与直径之比 E即自然对数的底数 这两个不需定义直接
import java.io.IOException;
import java.util.Random; public class Main
{
public static void main(String[] args){ double d1 = Math.ceil(11.51);//返回大于參数的最小整数
double d2 = Math.floor(11.51);//返回小于參数的最大整数
double d3 = Math.round(11.51);//返回四舍五入
System.out.println(d1);
System.out.println(d2);
System.out.println(d3);
System.out.println(Math.max(4, 5));
System.out.println((int)Math.pow(2, 3));//返回a的b次方 for (int i = 0; i < 10; i++) {
System.out.println((int)(Math.random()*10));//0-9随机数
//System.out.println(Math.floor(Math.random()*10));
}
Random ran = new Random();//Random对象
//返回下一个伪随机数,它是取自此随机数生成器序列的、在 0.0 和 1.0 之间均匀分布的 double 值。 for(int i = 0;i<10;i++){
//System.out.println((int)(ran.nextDouble()*6+1));//简写形式例如以下
int d = ran.nextInt(6)+1;//nextInt是Random中的方法
System.out.println(d);
}
}
}
JAVA学习第四十五课 — 其它对象API(一)System、Runtime、Math类的更多相关文章
- JAVA学习第四十六课 — 其它对象API(二)Date类 & Calendar类(重点掌握)
Date类(重点) 开发时,会时常遇见时间显示的情况,所以必须熟练Date的应用 <span style="font-family:KaiTi_GB2312;font-size:18p ...
- JAVA学习第四十八课 — IO流(二):文件的复制 & 缓冲区1
一.复制文本文件 将G盘的文本文件拷贝到D盘上 也就是 读取G盘中文本文件的数据.写入D盘中->连读带写 而剪切呢.就是连读带写后,删除原盘的文件 <span style="fo ...
- JAVA学习第六十五课 — 正則表達式
正則表達式:主要应用于操作字符串.通过一些特定的符号来体现 举例: QQ号的校验 6~9位.0不得开头.必须是数字 String类中有matches方法 matches(String regex) 告 ...
- NeHe OpenGL教程 第四十五课:顶点缓存
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- JAVA学习第三十六课(经常使用对象API)— Set集合:HashSet集合演示
随着Java学习的深入,感觉大一时搞了一年的ACM,简直是明智之举,Java里非常多数据结构.算法类的东西,理解起来就轻松多了 Set集合下有两大子类开发经常使用 HashSet集合 .TreeSet ...
- 【Java学习笔记之十五】Java中的static关键字解析
Java中的static关键字解析 static关键字是很多朋友在编写代码和阅读代码时碰到的比较难以理解的一个关键字,也是各大公司的面试官喜欢在面试时问到的知识点之一.下面就先讲述一下static关键 ...
- Java从零开始学四十五(Socket编程基础)
一.网络编程中两个主要的问题 一个是如何准确的定位网络上一台或多台主机,另一个就是找到主机后如何可靠高效的进行数据传输. 在TCP/IP协议中IP层主要负责网络主机的定位,数据传输的路由,由IP地址可 ...
- Java学习笔记(十五)——javadoc学习笔记和可能的注意细节
[前面的话] 这次开发项目使用jenkins做持续集成,PMD检查代码,Junit做单元测试,还会自动发邮件通知编译情况,会将javadoc生成的文档自动发到一个专门的服务器上面,每个人都可以看,所以 ...
- Java学习笔记二十五:Java面向对象的三大特性之多态
Java面向对象的三大特性之多态 一:什么是多态: 多态是同一个行为具有多个不同表现形式或形态的能力. 多态就是同一个接口,使用不同的实例而执行不同操作. 多态性是对象多种表现形式的体现. 现实中,比 ...
随机推荐
- Action访问ServletAPI的三种方式
一.前言 Struts是一种基于MVC设计模式的web应用框架,主要担任C的角色,用于分离页面显示和业务逻辑处理,那其实在我们学习jsp的时候学过一个具有类似功能的东西——servlet.其实Stru ...
- echarts 设置x轴的和y轴的属性
axisLabel:{ interval:0,//横轴信息全部显示 rotate:-30,//-30度角倾斜显示 } splitNumber:10
- HDU1863_畅通project【Prim】【并查集】
畅通project Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...
- Android 的Recovery机制
Android 的Recovery机制 文件夹 1. 系统的启动模式 1 1.1 Android系统的启动模式 1 1.2 系统的启动模式 2 2. Recovery模式中的三个部分 3 3. Rec ...
- ZOJ 3494 BCD Code (AC自己主动机 + 数位DP)
题目链接:BCD Code 解析:n个病毒串.问给定区间上有多少个转换成BCD码后不包括病毒串的数. 很奇妙的题目. . 经典的 AC自己主动机 + 数位DP 的题目. 首先使用AC自己主动机,得到b ...
- ORA 12505 Listener does not currently know of SID given in connection descriptor
oracle数据库正常启动后.在本地能够正常訪问,可是远程使用sqldevelop却不能訪问.提示ORA 12505 Listener does not currently know of SID g ...
- @dynamic与@synthesize的差别
如今非常多时候我们都已经不再使用@synthesizekeyword了,可是须要了解当中的原理: 一.@dynamic与@synthesize的差别 @property有两个相应的词.一个是@synt ...
- ThinkPHP5.0框架开发--第6章 TP5.0 请求和响应
ThinkPHP5.0框架开发--第6章 TP5.0 请求和响应 第6章 TP5.0 请求和响应 ===================================== 上次复习 1.新建控制器 ...
- [jzoj 6084] [GDOI2019模拟2019.3.25] 礼物 [luogu 4916] 魔力环 解题报告(莫比乌斯反演+生成函数)
题目链接: https://jzoj.net/senior/#main/show/6084 https://www.luogu.org/problemnew/show/P4916 题目: 题解: 注: ...
- [poj3974] Palindrome 解题报告 (hash\manacher)
题目链接:http://poj.org/problem?id=3974 题目: 多组询问,每组给出一个字符串,求该字符串最长回文串的长度 数据范围支持$O(nlog n)$ 解法一: 二分+hash ...