黑马程序员—基础学习 _常用类( 1 )
2015-05-30 15:25
471 查看
------- android培训、java培训、期待与您交流! ----------
System类:
1)包含一些获取系统信息的描述的方法;
2)在 System 类提供的设施中,有标准输入、标准输出和错误输出流;
3)对外部定义的属性和环境变量的访问;加载文件和库的方法;
4)快速复制数组的一部分的实用方法
实践代码:
在JVM启动时,动态加载一些属性信息:
测试截图:
Runtime类
1) 每个 Java 应用程序都有一个 Runtime 类实例
2) 使应用程序能够与其运行的环境相连接
3)可以通过 getRuntime 方法获取当前运行时
Runtime对象
该类并没有提供构造函数
说明不可以new对象,那么会直接想到该类中的方法都是静态的。
发现该类中还有非静态方法。
说明该类肯定会提供了方法获取本类对象。而且该方法是静态的,并返回值类型是本类类型
由这个特点可以看出该类使用了单例设计模式完成
实践代码:
Math 类:
包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数
注意:Java数值的强制转换不会进行四舍五入
实践代码:
练习:
System类:
1)包含一些获取系统信息的描述的方法;
2)在 System 类提供的设施中,有标准输入、标准输出和错误输出流;
3)对外部定义的属性和环境变量的访问;加载文件和库的方法;
4)快速复制数组的一部分的实用方法
实践代码:
public class SystemDemo { public static void main(String[] args) { /** * System.getProperties()返回的是Properties对象 * Properties是Hashtable的子类,也就是Map集合的一个子类对象 * 是以键值对的方式存储 * */ Properties prop = System.getProperties(); //定义特有的信息 System.setProperty("User", "Tom"); //获取指定属性信息 String value=System.getProperty("os.name"); System.out.println("value="+value); //在JVM启动时,动态加载一些属性信息 String v=System.getProperty("Author"); System.out.println("v="+v); //获取系统属性信息 for (Object obj:prop.keySet()) { String val=prop.getProperty((String) obj); System.out.println(obj+"::"+val); } } }
在JVM启动时,动态加载一些属性信息:
测试截图:
Runtime类
1) 每个 Java 应用程序都有一个 Runtime 类实例
2) 使应用程序能够与其运行的环境相连接
3)可以通过 getRuntime 方法获取当前运行时
Runtime对象
该类并没有提供构造函数
说明不可以new对象,那么会直接想到该类中的方法都是静态的。
发现该类中还有非静态方法。
说明该类肯定会提供了方法获取本类对象。而且该方法是静态的,并返回值类型是本类类型
由这个特点可以看出该类使用了单例设计模式完成
实践代码:
public class RuntimeDemo { public static void main(String[] args)throws Exception { Runtime r=Runtime.getRuntime(); Process p=r.exec("notepad.exe RuntimeDemo.java"); //4秒后杀死该线程 Thread.sleep(4000); p.destroy(); } }
Math 类:
包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数
注意:Java数值的强制转换不会进行四舍五入
实践代码:
import java.util.*; public class MathDemo { public static void main(String[] args) { // testRandom(); floatToInt(); } //关于生成随机数 public static void testRandom() { //默认 大于等于 0.0 且小于 1.0 的伪随机 Random r=new Random(); for(int x=0;x<10;x++){ //生成1--10之间的随机数 int d=(int)(Math.random()*10+1); sop(d); } } //关于小数取整 public static void floatToInt() { //向上取整 double d=Math.ceil(16.34); sop(d); //向下取整 double d1=Math.floor(12.99); sop(d1); //四舍五入 Long d2=Math.round(1.53); Long d3=Math.round(1.43); sop(d2); sop(d3); //求 次幂 double d4=Math.pow(2,3); sop(d4); } public static void sop(Object obj) { System.out.println(obj); } }
练习:
import java.util.*; /* 练习。给定一个小数。 保留该小数的后两位。 选作。可以考虑,保留时进行四舍五入。 */ public class MathDemo2 { public static void main(String[] args) { saveTwo(1.256,2,true); } /* param d 传入的小数 param scale 需要保留的小数位 param isRound 是否是四舍五入 */ public static void saveTwo(double d,int scale,boolean isRound) { double base=Math.pow(10,scale); double num=isRound?Math.round(d*base)/base:(int)(d*base)/base; sop("num:"+num); } public static void sop(Object obj) { System.out.println(obj); } }
相关文章推荐
- 面试题:throws和throw的区别
- 面试题18:树的子结构
- 面试题17:合并两个排序的链表
- 面试题15:输入一个链表,输出该链表中倒数第k个结点。
- 面试题16:反转链表
- 展望未来,总结过去10年的程序员生涯
- 黑马程序员——IO流8:IO流综合练习
- 黑马程序员-Java之匿名内部类
- 黑马程序员——正则表达式和网页爬虫
- 黑马程序员——IO流7:其他IO技术介绍-下
- 面试题14:调整数组顺序
- 黑马程序员——线程间通信
- 爱折腾的女程序员
- 面试题13:在O(1)的时间删除链表结点
- 面试题12:打印1到最大的n位数
- 软件测试-职业发展-邱建忠
- 黑马程序员——OC面向对象的基础认识
- 测试工程师职业规划
- 中软的测试面试题
- 软件面试题-灵活