--------- android培训、java培训、期待与您交流!----------
一、静态导入
import语句可以导入一个类或某个包中的所有类
import static 语句导入一个类中的某个静态方法或所有静态方法。
实际上静态导入就是简化书写。
如下:
当使用静态导入以后,可以简化书写:
import static java.lang.System.out; import static java.lang.Math.max;//导入Math下max的静态方法 import static java.lang.Math.*;//导入Math下所有静态方法。 out.println(max(4,12));//求两数的最大值 out.println(abs(4-8));//求绝对值。
二、可变参数
该方法充许指定数量不确定的形参。如果在定义方法时,在最后一个形参的类型后增加三点(...),则表明该形参可以接受多个参数值,多个参数值被当成数组传入
如下:
class VariablepParameter { public static void test(int a, String... strs) { //strs被当作成数组处理,因此可以迭代 for(String str : strs) { System.out.println(str); } System.out.println(a); } public static void main(String[] args) { //调用test方法 test(3, "传智播客", "黑马程序员"); test(4, "传智播客", "黑马程序员", "Android培训", "java培训"); } } /* ----------------------------------- 传智播客 黑马程序员 3 传智播客 黑马程序员 Android培训 java培训 4 ----------------------------------- */
下面两种方法效果是一样的:
//以可变参数的方式: public static void test(int a, String strs){} //以数组形参的方式: public static void test(int b, String strs){} //但如果采用数组形参的方式来声明方法,调用时则必须付给该形参一个数组。 test(3, new String[]{"传智播客","黑马程序员"});
总结:
1、只能出现在参数列表的最后;
2、...位于变量类型的变量名之间,前后有无空格都可以。
3、调用可变参的方法进,编译器为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数。
三、增强for循环
1、语法:
for(参数类型 变量名 : 集合或数组变量名){}
2、注意事项:
迭代变量必须在( )中定义.
集合变量可以是数组或实现了Iterable接口的集合类.
上面的例子中已展现
四、自动拆箱与装箱
以一个例子来具体说明:
class IntegerDemo { public static void main(String[] args) { Integer x = new Integer(4); Integer x = 4; /* 自动装箱。"4"等价于new Integer(4);1.5版本以后新特性。x可以为空, 也就是Integer x = null;这时就不能参与运算,否则会出现异常。 */ x = x/*拆箱原理:x.intValue()*/ + 2; //x + 2:x进行自动拆箱,变成了int类型,和2进行加法去处,再将和装箱给x。 System.out.println(x);//6 Integer m = 128; Integer n = 128; System.out.println(m == n);//false,因为是两对象 Integer a = 127; Integer b = 127; System.out.println(a == b);//true,因为a和b指向了同一个Integer对象。 /* 在1.5新版本特性,当数值在byte范围内(-128~127)时,如果该数值已经存在,则不会 再开辟新的空间。 */ } }
五、枚举(Enum)
枚举在Java1.5新特性里是比较重要的,具体请参考我的博客:
http://1139347837.blog.51cto.com/blog/7481349/1252931
六、注解(Annotation)
这个知识点很重要,具体请参考我的博客:
http://1139347837.blog.51cto.com/7481349/1282437
七、泛型(Generic)
这个知识点也很重要,具体请参考我的博客:
http://1139347837.blog.51cto.com/blog/7481349/1247796
--------- android培训、java培训、期待与您交流!----------