---------------------- ASP.Net+Android+IO开发S、.Net培训、期待与您交流! ----------------------
java5的静态导入
静态导入
import语句可以导入一个类或某个包中所有类
import static 语句导入一个类中的某个静态方法或所有静态方法
package com.lee.demo;
/*
* 静态导入
* import语句可以导入一个类或某个包中所有类
* import static 语句导入一个类中的某个静态方法或所有静态方法
* */
//import static java.lang.Math.max;
import static java.lang.Math.*;
public class StaticImport {
public static void main(String[] args) {
int a = 2;
int b =4;
//System.out.println(Math.min(a,b));
//System.out.println(Math.abs(3.6));
System.out.println(abs(4.5));//静态导入后可以省略Math.
}
}
可变参数
可变参数的特点:
只能出现在最后;
...位于变量类型和变量名之间,前后有无空格都可以;
调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数。
package com.lee.demo;
public class VariableParameter {
public static void main(String[] args) {
//重载
System.out.println(add(2,3));
System.out.println(add(2,3,4));
System.out.println(add(2,3,4,5));
}
public static int add(int x,int... args){
int sum = x;
for(int i=0;i<args.length;i++){
sum=sum+args[i];
}
return sum;
}
}
增强for循环
语法:
for(type 变量名 :集合变量名){...}
注意事项:
迭代变量要在()中定义!
集合变量可以是数组或者实现了Iterable接口的集合类
public static int add(int x,int... args){
int sum = x;
/* 普通循环体
for(int i=0;i<args.length;i++){
sum=sum+args[i];
}*/
//增强for循环如下
for(int i : args){
sum+=i;
}
return sum;
}
数据类型的自动拆箱与装箱、享元
享元模式:
它使用共享物件,用来尽可能减少内存使用量以及分享资讯给尽可能多的相似物件;它适合用于当大量物件只是重复因而导致无法令人接受的使用大量内存。
package com.lee.demo;
public class AutoBox {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//自动装箱
Integer iObj = 3;//JDK1.5以前要Integer iObj = new Integer(3);
//自动拆箱
System.out.println(iObj+12);
Integer i1 = 129;
Integer i2 = 129;
//-128~127之间的数字会被缓存到缓冲池中,下次访问直接由缓冲池读取。--享元flyweight
System.out.println(i1==i2);
//两个对象,依然满足享元
Integer i3 = Integer.valueOf(3);
Integer i4 = Integer.valueOf(3);
System.out.println(i3==i4);
}
}
---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ----------------------
详情请查看:http://edu.csdn.net