您的位置:首页 > 编程语言 > Java开发

java5的静态导入与自动装箱拆箱,增强for循环

2016-07-31 20:04 302 查看
1、Java5·0的新特性:
静态导入
自动装箱/拆箱
增强for循环
可变参数
枚举 
反射
内省
泛型
元数据
2、静态导入:
语法:Import static 包名.类名.静态属性|静态方法|*;
eg:Import static  java.lang.Math.*;
3、自动装箱和拆箱:
自动装箱:开发人员把基本数据类型直接赋给对应的包装类
自动拆箱:把包装类的对象直接赋给基本数据类型
eg:integer i = 1;<=>integer i = new integer(1);//把基本数据类型1变成对象1赋给i;
int j = i;//把对象i赋给基本类型j

package com.huanhaun;

import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.Iterator;

import org.junit.Test;

public class Deno1 {

// 数组的增强for循环
@Test
public void test1() {
int arr[] = { 1, 2, 3 };
for (int num : arr) {
System.out.println(num);
}
}

// 集合的增强for循环
@Test
public void test2() {
List list = new ArrayList();
list.add(1);
list.add(2);
list.add(3);
for (Object obj : list) {
int i = (Integer) obj;
System.out.println(i);
}

}

// Map的传统方式1
@Test
public void test3() {
Map map = new LinkedHashMap();
map.put("1", "aa");
map.put("2", "bb");
map.put("3", "cc");
map.put("4", "dd");
//传统方式1
Set set = map.keySet();
Iterator it = set.iterator();
while(it.hasNext())
{
String key = (String)it.next();
String value = (String) map.get(key);
System.out.println(key+"="+value);
}
}
// Map的传统方式2
@Test
public void test4() {
Map map = new LinkedHashMap();
map.put("1", "aa");
map.put("2", "bb");
map.put("3", "cc");
map.put("4", "dd");
//传统方式2
Set set = map.entrySet();
Iterator it = set.iterator();
while(it.hasNext())
{
Map.Entry entry = (Entry) it.next();
String key = (String) entry.getKey();
String value = (String) entry.getValue();
System.out.println(key+"="+value);
}
}
// Map的增强for循环方式1
@Test
public void test5() {
Map map = new LinkedHashMap();
map.put("1", "aa");
map.put("2", "bb");
map.put("3", "cc");
map.put("4", "dd");
//增强for循环方式1
Set set = map.keySet();
for(Object obj:set)
{
String key = (String) obj;
String value = (String) map.get(key);
System.out.println(key+"="+value);
}
}
// Map的增强for循环方式2
@Test
public void test6() {
Map map = new LinkedHashMap();
map.put("1", "aa");
map.put("2", "bb");
map.put("3", "cc");
map.put("4", "dd");
//增强for循环方式2
Set set = map.entrySet();
for(Object obj:set)
{
Map.Entry entry = (Entry) obj;
String key = (String) entry.getKey();
String value = (String) entry.getValue();
System.out.println(key+"="+value);
}
}
//增强for循环需要注意的问题:增强for循环只适用于取数据,要修改数组或集合中的数据只能用传统方法
@Test
public void test7() {
int arr[] = { 1, 2, 3 };
for (int num : arr) {
num = 10;
}
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
List list = new ArrayList();
list.add(1);
for(Object obj:list)
{
obj = 10;
}
System.out.println(list.get(0));
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐