黑马程序员-JAVA基础加强-新特性简介
来源:互联网 发布:车载空气净化器 知乎 编辑:程序博客网 时间:2024/04/28 19:04
------- android培训、java培训、期待与您交流! ---------
静态导入、可变参数、自动拆箱与装箱和享元模式
StaticImport 静态导入。
当类名重名时,需要指定具体的包名。
当方法重名时,指定具备所属的对象或者类。
当类名重名时,需要指定具体的包名。
当方法重名时,指定具备所属的对象或者类。
import后面跟Static时导入的是某个类的所有静态成员,导入后调用方法时可以省略类名。
import java.util.*;import static java.util.Arrays.*;//导入的是Arrays这个类中的所有静态成员。import static java.util.Collections.*;import static java.lang.System.*;//导入了System类中所有静态成员。class StaticImport //extends Object{public static void main(String[] args) {out.println("haha");int[] arr = {3,1,5};sort(arr);//Arrays.导入静态后省略int index = binarySearch(arr,1);out.println(Arrays.toString(arr));//不能省略Arrays.因为Object里面也有toString方法,所以需要指定System.out.println("Index="+index);ArrayList al = new ArrayList();al.add(1);out.println(al);sort(al);out.println(al);}
可变参数:
public static int add(int x,int ...args)//...就是可变参数
可变参数的特点:
只能出现在参数列表的最后
...位于变量类型和变量之间,前后有无空格都可以
调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数
public static void main(String[] args) {// TODO Auto-generated method stubSystem.out.println(add(1,2,3,5));System.out.println(add(2,3,5));}public static int add(int x,int ...args) {int sum = x;for(int i=0;i<args.length;i++) {sum += args[i];}return sum;}增强for循环
语法:
for ( type 变量名:集合变量名 ) { … }
注意事项:
迭代变量必须在( )中定义!
集合变量可以是数组或实现了Iterable接口的集合类
举例:
for ( type 变量名:集合变量名 ) { … }
注意事项:
迭代变量必须在( )中定义!
集合变量可以是数组或实现了Iterable接口的集合类
举例:
public static int add(int x,int ...args) { int sum = x; for(int arg:args) { sum += arg; } return sum;}
自动拆箱与装箱
Integer x=4//自动装箱相当于Integer x=new Integer(4)
Integer x=4//自动装箱相当于Integer x=new Integer(4)
x=x+2;//x+2,x进行自动拆箱,变成了int类型。拆箱的过程相当于调用x.intvalue()和2进行加法运算,在将他们的和进行装箱赋给x.
Integer m = 129;
Integer n = 129;
System.out.println("m==n:"+(m==n));//结果为flase,因为越界开辟了新空间,因为byte的范围是-127—127.
享元模式
Integer m = 129;
Integer n = 129;
System.out.println("m==n:"+(m==n));//结果为flase,因为越界开辟了新空间,因为byte的范围是-127—127.
享元模式
将那些值比较小的整数、a-z,26个字母缓存起来放入常量池,当其他地方用到该常量或组成各个单词时,直接调用而不重新新建对象。
有很多小的对象,它们有很多属性相同,把它们变成一个对象,那些不同的属性把他们变成方法的参数称之为外部状态。那些相同的属性称之为对象的内部状态。
有很多小的对象,它们有很多属性相同,把它们变成一个对象,那些不同的属性把他们变成方法的参数称之为外部状态。那些相同的属性称之为对象的内部状态。
------- android培训、java培训、期待与您交流! ---------
- 黑马程序员-JAVA基础加强-新特性简介
- <黑马程序员>java基础加强--JDK 5.0 新特性
- <黑马程序员>枚举--(java基础加强1.5新特性)
- 黑马程序员-java基础加强-JDK1.5新特性
- 黑马程序员-java基础加强-JDK1.5新特性注解
- 黑马程序员-java基础加强-JDK1.5新特性-泛型
- 黑马程序员---java基础加强---高新技术JDK1.5新特性
- 黑马程序员-->Java基础加强-->JDK1.5新特性
- 黑马程序员---Java基础加强---JDK1.5新特性
- 黑马程序员---Java基础加强---JDK1.5新特性:泛型
- 黑马程序员---Java基础加强---JDK1.5新特性:注解
- 黑马程序员---Java高新基础加强
- 黑马程序员-基础加强-IDE&新特性&枚举-No.06
- 黑马程序员_基础加强(1) JDK1.5新特性
- 黑马程序员__java 1.5新特性_基础加强学习
- 黑马程序员_基础加强(jdk1.5新特性)
- 黑马程序员_java基础加强(二) JDK1.5新特性
- 黑马程序员_<<基础加强--1.5新特性(上)>>
- 编程中无穷大常量的设定技巧
- EcShop充值卡功能插件(2)
- iOS开发网络应用的利器
- GoF23种设计模式之行为型模式之策略模式
- linux驱动学习--第十天:第五章 Linux 文件系统与设备文件系统(四) 之 设备文件系统 devfs 和 udev
- 黑马程序员-JAVA基础加强-新特性简介
- Android---让拍照变得简单(二)
- UVa 10192 - Vacation
- Hadoop2.x集群动态添加删除数据节点
- EcShop充值卡功能插件(3)
- 练习Session索引
- hibernate配置文件hibernate.cfg.xml的详细解释
- EcShop充值卡功能插件(4)
- Visual Studio 2013在软件生命周期管理上的改进