牛骨文教育服务平台(让学习变的简单)
博文笔记

增强for循环和可变长度数组

创建时间:2016-07-26 投稿人: 浏览次数:145
package com.qf.demo2;

public class Test {

	public static void main(String[] args) {
		// 增强for循环
		// 数据类型  变量   :   数组名/集合名字
		for (String string : args) {
			
		}
		
		int[] a = {1,3,5,3,2,6};
		for (int i : a) {
			System.out.print(i+"	");
		}
		// 增强for循环 书写比普通for简单
		// 		执行效率也比普通的for循环要高
		
		
		Person[] persons = new Person[]{new Person("邓超", 42),new Person("孙俪", 34),new Person("等等", 5)};
		
		int i= 0;
		for (Person person : persons) {
			if(i==1){
			 person.age = 35;
			}
			System.out.println(person.toString());
			
			i++;
		}
		
		
		// 当数组循环到第二次的时候给person重新附年龄
		
		for (int j = 0; j < persons.length; j++) {
			if(j==1){
				persons[j].age = 35;
			}
			System.out.println(persons[j].toString());
		}
		
		// 增强for循环的缺点:没有办法使用for中的索引
		
		
		
	}
	
}

class Person{
	String name;
	int age;
	public Person(String name ,int age){
		this.name = name;
		this.age = age;
	}
	@Override
	public String toString() {
		return "Person [name=" + name + ", age=" + age + "]";
	}

	
}

可变长度数组

package com.qf.demo2;
/**
 * 可变长度数组
 * 格式:
 * int...a;
 * @author Administrator
 *
 */
public class Test2 {

	public static void main(String[] args) {
		//int... a;// 必须放到方法的形式参数列表上
		//  可变长度数组赋值 需要这样去赋
		test(1,2,5,3,2,1);
		test(3,"aaaaaaa","hello","word");
	}
	
	public static void  test(int... a){
		for (int i = 0; i < a.length; i++) {
			System.out.print(a[i]+"	");
		}
		
	}
	public static void  test(int b,String... a){
		for (int i = 0; i < a.length; i++) {
			System.out.print(a[i]+"	");
		}
	}
	
	// 可变长度数组必须方法形式参数列表的最后一个
	
}


声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。