System系统操作类和基本数据类型封装类

本文详细介绍了Java中的System系统操作类,包括System类的属性和方法,如currentTimeMillis()、gc()和exit()等。同时,探讨了Runtime类的getRuntime()和exec()方法。此外,文章还涵盖了基本数据类型如Integer、Character和Boolean的封装类,讲解了它们的特点、常见方法及自动装箱、拆箱机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、System系统操作类

1、System

在这里插入图片描述
1.1System类的简单介绍

  • system没有构造方法
  • 属性err,in,out都是为了得到一个流
  • err、out都是用来输出信息的,在控制台输出我们想要输出的信息,都是一个printstream(标准输出流)
    In是用来获取输入信息,得到一个inputstream
    1.2System常用的方法
    currentTimeMillis();
    在这里插入图片描述
    gc();
    在这里插入图片描述
    exit( int status); status状态----0,1
    在这里插入图片描述
    load( String filename);
    该命令只能在32位操作系统运行,
    在这里插入图片描述
    getProperty(String key);
    在这里插入图片描述
    相关键值的对应如下所示
    在这里插入图片描述
    arraycopy(-,-,-,-,-,);
    在这里插入图片描述

具体的代码演示如下:

//常用的方法
	@Test
	void  test02() {
		
		//获取系统当前时间,从1970.0.0到现在的毫秒值,与电脑同步
		System.out.println("获取系统的当前时间"+System.currentTimeMillis());
		
		//手动垃圾回收
		System.gc();
		
		//终止虚拟机的运行
		for(int i = 0;i<10;i++) {
			System.out.println(i);
			if(i==5) {
				System.exit(0);
			}
		}
	}
//加载系统配置文件,只能在32位操作系统上进行
	@Test
	void  test03() {
		System.load("里面传入文件的全路径");
	}
	
	
	//获得指示建指示的系统属性
	@Test
	void  test04() {
		
		System.out.println("jdk版本"+System.getProperty("java.version"));
		System.out.println("操作系统的名称"+System.getProperty("os.name"));
		System.out.println("操作系统的架构是"+System.getProperty("os.version"));
		System.out.println("用户的主目录是"+System.getProperty("user.home"));
		System.out.println("用户当前的工作目录是"+System.getProperty("user.dir"));
	}
	
	
	//数组元素的拷贝
	@Test
	void  test05() {
		int [] num1 = new int [] {10,20,30,40};
		int  [] num2 = new int [3];
		/*五个参数分别代表的意义
		 * 一:源数组
		 * 二:源数组中的起始位置
		 * 三:目标数组
		 * 四:目标数据中的起始位置
		 * 五:要复制的数组元素的数量
		 */
		System.arraycopy(num1, 1, num2, 0, 3);
		for (int i : num2) {
			System.out.println(i);
		}
	}

2、Runtime(运行时对象)

2、1简单介绍
在这里插入图片描述
2、2常用方法
getRuntime();
在这里插入图片描述
exec(String command); 使用Java程序开启电脑中的其他应用
在这里插入图片描述
代码演示如下:

//Runtime
	
	@Test
	void  test06() {
		//终止虚拟机的运行
		for (int i = 0; i < 10; i++) {
			System.out.println(i);
			if(i == 5) {
				//获取Runtime对象
				Runtime runtime = Runtime.getRuntime();
				runtime.exit(0);
			}
		}
	}
	
	//使用Java程序打开系统应用软件
	@Test
	void  test07() {
		Runtime runtime = Runtime.getRuntime();
		try {
			runtime.exec("D:\\应用软件\\Tencent\\QQLive\\QQLive.exe");
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

二、基本数据类型的封装类

  • Java的基本数据类型有:byte,short,int,long,char,float,double,boolean
  • java给每一个基本数据类型都提供了一个对应的封装类,封装类可以对数据进行更多的处理
  • 封装类的名字除了char是Character,int是Integer,其他封装类的名字都是首字母大写名

1、数值型 Integer

1、1简单介绍
在这里插入图片描述
1、2常用方法

  • MAX_VALUE
    MIN_VALUE
    在这里插入图片描述
    代码演示:在这里插入图片描述

  • 类型转换 int------》其他类型
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • parseInt(String s);
    parseInt(String s,int radix);
    在这里插入图片描述

  • compareTo(Integer);
    在这里插入图片描述
    在这里插入图片描述
    代码演示如下:

//类型转换
	@Test
	void  test3() {
		//直接将int类型的数值赋值给Integer类型的变量
		Integer  integer02 = Integer.valueOf(10);
		//将其他类型的值转为int类型的
		String  num = "200";
		System.out.println("转换前"+num+100);
		Integer valueOf = Integer.valueOf(num);
		System.out.println("转换后"+(valueOf+100));
		
		//将字符串类型转换为int类型
		int parseInt = Integer.parseInt(num);//这样会得到一个int
		System.out.println(parseInt+200);
		/*
		 * 参数一:字符串
		 * 参数二:进制数
		 */
		int parseInt2 = Integer.parseInt("1010", 2);
		System.out.println(parseInt2);
		
		//反转和比较
		int reverse = Integer.reverse(10);
		System.out.println(reverse);
		//比较的结果有1,0,-1
		int compareTo = integer02.compareTo(130);
		System.out.println(compareTo);
		
	}

在这里插入图片描述

3、自动装箱和自动拆箱(注意byte常量池)
见代码

/*
	 * 自动装箱和自动拆箱
	 * 
	 * 自动装箱:将基本数据类型转为Integer类型,直接赋值(编译的时候,默认调用的是valueOf)
	 * 自动拆箱:将封装类转为基本类型 Integer---int,直接赋值
	 * 
	 */
	@Test
	void  test4() {
		//自动装箱
		Integer  i01 = 10;
		Integer i02 = new Integer(20);//手动装箱
		Integer i03 = Integer.valueOf(30);//手动装箱
		System.out.println(i01);
		System.out.println(i02);
		System.out.println(i03);
		
		//自动拆箱
		int  num01 = i01;
		int  num02 = i01.intValue();//手动拆箱
	}

注意:
当我们所要封装的值在byte取值的范围之内时,当我们使用封装类对他进行封装的时候,他默认的会去调用byte常量池中的东西,即当数值相同时,他所引用的地址值是相同的,所以我们使用==或者equals比较的值也是相同的

2、字符型 Character

1、介绍
在这里插入图片描述

2、代码演示

@Test
	void  Charactertest() {
		//进行字符大小写判断
		Character  ct ='a';
		System.out.println(Character.isLowerCase(ct));
		System.out.println(Character.isUpperCase(ct));
		
		//转换
		String string = ct.toString();
		System.out.println(string);
		
		//小例子  怎么判断ct是一个小写字母
		for (int i = 97; i < 122; i++) {
			if(ct==i) {
				System.out.println("是一个小写字母");
			}
		}
	}

3、布尔型 Boolean

1、介绍
在这里插入图片描述

2、代码演示

@Test
	void  booleantest(){
		//自动拆箱 ,对应基值 true 的 Boolean 对象。
		boolean  bool = Boolean.TRUE;
		//转换
		Boolean  bool01 = new Boolean("true");
		System.out.println(bool01);
		//将字符串参数分析为 boolean 值。
		boolean parseBoolean = Boolean.parseBoolean("123");
		System.out.println(parseBoolean);//运行结果为false
		
	}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值