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面向对象的三大特性之多态 一:什么是多态: 多态是同一个行为具有多个不同表现形式或形态的能力. 多态就是同一个接口,使用不同的实例而执行不同操作. 多态性是对象多种表现形式的体现. 现实中,比 ...
随机推荐
- nutch的一些基础整理
nutch的一些基础整理 原创 2015年03月22日 18:18:01 标签: nutch / 240 编辑 删除 一.关于配置文件: nutch-default.xml:爬虫的默认配置.在${nu ...
- 记一次在广播(BroadcastReceiver)或服务(Service)里弹窗的“完美”实践
事情是这样的,目前在做一个医疗项目,需要定时在某个时间段比如午休时间和晚上让我们的App休眠,那么这个时候在休眠时间段如果用户按了电源键点亮屏幕了,我们就需要弹出一个全屏的窗口去做一个人性化的提示,“ ...
- Markdown简单介绍和基本的语法
原文发表自我的个人站点 http://www.hainter.com/markdown.欢迎大家訪问,谢谢支持~ Markdown是一种语言,能够用于编写高质量的文章,语法简单易用 Markdown的 ...
- 改动android 系统时间
命令如 date -s "yyyymmdd.[[[hh]mm]ss]" 直接在CRT上执行,举例:date -s "20120801.120503" 但在adb ...
- 箭头函数普通函数this
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- iOS CoreData介绍和使用(以及一些注意事项)
iOS CoreData介绍和使用(以及一些注意事项) 最近花了一点时间整理了一下CoreData,对于经常使用SQLite的我来说,用这个真的有点用不惯,个人觉得实在是没发现什么亮点,不喜勿喷啊.不 ...
- 关于Tool接口--------hadoop接口:extends Configured implements Tool 和 ToolRunner.run
我们在写Hadoop--map/reduce程序时,遇到使用按文件url来分析文件----------多表连接的DistributedCache方式,看不懂使用extends Configured i ...
- System.IO.FileLoadException异常
未能加载文件或程序集“NHibernate, Version=4.1.0.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4”或它的某一个依赖 ...
- JS异步操作之promise发送短信验证码.html
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta cont ...
- Servlet学习(五)——通过response设置响应体及中文乱码问题
1.响应体设置文本 PrintWriter writer=response.getWriter(); 获得字符流,通过字符流的write(String s)方法可以将字符串设置到response 缓冲 ...