java基础(二)------学习system类的几点收获(二)

原创 2013年12月03日 21:39:51

system类的几个方法中,有很大一部分是对外部定义的属性和环境变量的访问和删除,也有arraycopy这实用的方法。
①getenv()方法,这是一个重载的方法,参数可以为空或者是String类型。前者返回Map集合。后者根据String返回参数值。代码如下:

public class Demo1 {


	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		Map<String,String>  map=System.getenv();//使用无参方法
		Collection c=map.values();
		Iterator it =c.iterator();
		while(it.hasNext())
		{
			System.out.println(it.next());
			
		}
		 
	}


}	
package com.j2se.system;

public class Demo2 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		
		System.out.println(System.getenv("path"));//获取系统变量--path的值
		System.out.println(System.getenv("classpath"));//获取系统变量--classpath的值
	}

}

②getPropertiey(String name)方法和getProperties()方法。后者返回
Properties类,是Hashtable的子类。可以转化为枚举类型,然后遍历取值。代码如下;

package com.j2se.system;

import java.util.Enumeration;
import java.util.Properties;

public class Demo5 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		
		Properties p=System.getProperties();
		Enumeration<Object> e=p.elements();
		Enumeration<String> e1=(Enumeration<String>) p.propertyNames();
		while(e1.hasMoreElements())
		{
			System.out.println(e1.nextElement()+":  "+System.getProperty(e1.nextElement()));
		}
		
	}
	
	

}

③currentTimemillion方法,可以得到一个长整型的数值,可以利用这个方法算出执行某一段程序所花费的时间。同时,还有gc方法和exit方法也应该引起我们的注意,gc方法执行以后,系统的垃圾回收器可能会回收不用的对象,减少空间占用。代码如下:
public class Demo11 {
	public static void main(String[] args)
	{
		long start =System.currentTimeMillis();//获取起始时间
		int j=0,k=0;
		for(int i=0;i<100000000;i++)
		{
			j++;
			k++;
			j=j*k;
		}
		long end =System.currentTimeMillis();//获取结束时间
		long time =end-start;
		System.out.println("运行所用时间:"+time);//打印运行时间
		
		System.exit(0);
		System.out.println("11111");//验证exit方法,此语句不会执行
	}

}

程序会打印for循环执行以后的时间。但是最后一条语句不会打印。
system类主要提供了一些关于jdk的环境的获取和操作的字段和方法,但是也会有数组的复制这种比较实用的方法。

相关文章推荐

Java 7之基础 - 学习Java类必须知道的几点

1、类的加载执行顺序  看一下如下的例子: class ParentClass { public static int a=2; public int b=3; { System.out....

JAVA基础day18 常用类的学习 System Date Math等

System类Runtime类: 该类没有构造方法,说明该类不可以创建对象,该想到该类方法全为静态,看API发现该类中还有非静态方法,那么说明该类中肯定有个方法,可以获取本类对象,方法为静态,并且返...

java基础学习--System类、Runtime类、date和Calendar类、Math类

1、System类     System类是描述系统的一些信息的类,类中方法和属性都是静态的,没有提供构造函数,不能实例化。   1)两个重要字段:   out:标准输出流,默认是控制台。   in:...

黑马程序员——高新技术---Java基础-常用类-正则表达式,Math类,Random类,System类,Date类

正则表达式: 字符类: 利用正则表达式验证字符串是否已h开头,以d结尾,而且中间只有一个字符,而且是原元音字母a,e,i,o,u? String str= "had"; Stringregex = "...

Java基础14----正则表达式、Math类、System类、BigInteger、日期类

一、Pattern Matcher二、BigInteger BigDecimal三、System四、SimpleDateFormat五、Calendar

黑马程序员---Java基础(System,Runtime,Date,Calendar,Math类)

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 以下是java基础当中的有关类: /* System:类中的方法和属性都是静态的。 out:标...

Java基础(其他对象System、时间类(Date、Calendar)、Math)

System 一、概述 1、System是描述系统一些信息的类,类中的属性和方法都是静态的。不能被实例化,没有提供构造函数。 2、字段摘要        out:标准输出流。默认是控制台。   ...
  • zzamk
  • zzamk
  • 2015年03月22日 14:44
  • 472

JAVA基础再回首(十二)——Character类、Math类、Random类、System类

JAVA基础再回首(十二)——Character类、Math类、Random类、System类 版权声明:转载必须注明本文转自程序员杜鹏程的博客:http://blog.csdn.net/m366...
  • m366917
  • m366917
  • 2016年08月15日 20:04
  • 1286

关于JAVA中 内部类的几点学习笔记

JAVA 内部类

学习Java类必须知道的几点

 1、类的加载执行顺序  看一下如下的例子: [java] view plaincopyprint? class ParentClass {       public s...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java基础(二)------学习system类的几点收获(二)
举报原因:
原因补充:

(最多只允许输入30个字)