黑马程序员-----枚举、静态导入、增强for(第八篇)

-----------android培训java培训、java学习型技术博客、期待与您交流!------------

1.静态导入:

import 语句可以导入一个类或某个包中的所有类

import static语句导入一个类中的某个静态方法或所有静态方法

 

2.可变参数

只能出现在参数列表的最后;

。。。位于变量类型和变量名之间,前后有无空格都可以;

调用可变参数的方法是,编译器为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数。

 

3.增强for循环

语法:for(type 变量名:集合变量名){。。。}

注意事项:迭代变量必须在()中定义!

集合变量可以使数组或实现Iterable接口的集合类

举例:Public static int add(int x,int)

4.享元模式。

有很多小对象把他们相同的属性变成一个对象(内部状态),不同的属性封装成方法的参数(外部状态)。

应用实例如下所示:

package cn.itcast.day1;
public class StaticImport {
	public static void main(String args[])
	{
		 
     	Integer iObj=3;//自动装箱
     	String s1=new String("abc");
     	String s2=new String("abc");
     	System.out.println(s1.equals(s2));
     	//享元模式
     	System.out.println(iObj+12);
 		System.out.println(add(4,8,3));
 		Integer i1=122;
 		Integer i2=122;
 		System.out.println(i1==i2);
	}
	//
	public static int add(int x,int... args)
	{	
		//增强for循环
		int sum=x;
		for(int y:args)
		{
			sum=sum+y;
			System.out.print(sum);
		}
		return sum;
	}
}

5.枚举

枚举就是要让某个类型的变量的取值只能为若干个固定值中的一个,否则,编译器就会报错。

枚举可以让编译器在编译时就可以控制源程序中填写的非法值,普通变量的方式在开发阶段无法实现这一目标。

应用实例:

package cn.itcast.day1;
//枚举的应用
public class StaticImport {
	public static void main(String args[])
	{
		WeekDay weekday=WeekDay.SUN;
		System.out.println(weekday);//执行第一个。
 		System.out.println(weekday.name());
//		System.out.println(weekday.ordinal());
//		System.out.println(weekday.values().length);
 		TrafficLamp t=TrafficLamp.RED;
	}
	//
	public enum WeekDay//enum定义枚举类
	{	
		SUN(1),MON,TUE;	//定义枚举的元素
		private WeekDay(){System.out.println("first");}
		private WeekDay(int day){System.out.println("second");}
	}
	public enum TrafficLamp{
		//RED作为父类对象,匿名内部类实现、子类的实现代码。带上了抽象方法。
		RED(30){
			//重写父类的抽象函数
			public TrafficLamp nextLamp()
			{
				return GREEN;
			}
		},
		GREEN(10){
			public TrafficLamp nextLamp()
			{
				return YELLOW;
			}
		},
		YELLOW(5){
			public TrafficLamp nextLamp()
			{
				return RED;
			}
		};//定义3个
		public abstract TrafficLamp nextLamp();
		private int time;
		private TrafficLamp(int time)
		{
			this.time=time;
			System.out.println(this.time);
		}
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值