Java基础一: 自动装箱,折箱、静态导入、可变参数

自动装,折箱

/**
 * JDK1.5 自动装箱,折箱
 * 
 * @author 张明学
 * 
 */
public class AutoBox {

	public static void main(String[] args) {
		// 装箱
		Integer ig = 2;
		// 折箱
		System.out.println(ig + 8);

		Integer i1 = 13;
		Integer i2 = 13;
		// i1与i2是否相同
		System.out.println(i1.equals(i2));// true
		System.out.println(i1 == i2);// true
		// -128到127之间的数据JDK将它封箱成一个对象
		Integer i3 = 137;
		Integer i4 = 137;
		// i1与i2是否相同
		System.out.println(i3 == i4);// false
		System.out.println(i3.equals(i4));// true
		
		//Integer.valueOf()方法
		Integer i5 = Integer.valueOf(3);
		Integer i6 = Integer.valueOf(3);
		System.out.println(i5 == i6);// true
		System.out.println(i5.equals(i6));// true

		Integer i7 = Integer.valueOf(200);
		Integer i8 = Integer.valueOf(200);
		System.out.println(i7 == i8);// false
		System.out.println(i7.equals(i8));// true
	}

}

 注:-128到127之间的数据JDK将它封箱成一个对象,每次构造一个都是同一个对象

 

静态导入

import static java.lang.Math.max;

/**
 * JDK1.5 静态导入
 * 
 * @author 张明学
 * 
 */
public class StaticImport {

	public static void main(String[] args) {
		System.out.println(Math.max(3, 6));
		System.out.println(max(3, 6));
	}
}

 

可变参数

/**
 * JDK1.5 可变参数
 * 
 * @author 张明学
 * 
 */
public class VariableParameter {

	public static void main(String[] args) {
		System.out.println(add(1, 2, 3, 4, 5, 6));
	}
	
	/**
	 * 可变参数:1.必须放在参数列表最后 
	 * 		   2.调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体中可以数组形式访问可变参数
	 * 
	 * @param x
	 * @param args
	 * @return
	 */
	public static int add(int x, int... args) {
		int sum = 0;
		sum = sum + x;
		for (int i = 0; i < args.length; i++) {
			sum += args[i];
		}
		for(int m : args){
			System.out.println(m);
		}
		return sum;
	}

}

 

你可能感兴趣的:(java,jdk)