A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 pzfpang449 于 2013-1-5 17:50 编辑

1,静态导入 import static
2,自动装箱:把基本数据类型直接赋值给对应的包装类
自动拆箱:包装类对象直接赋给对应的基本数据类型
3,高级for循环 只能用在数组、或实现Iterable接口的集合类上
例子(用junit测试)




//传统方法1 keyset
@Test
public void test3(){
                //如果想让显示有顺序需将HashMap()换成LinkedHashMap()....   Map map=new LinkedHashMap();
Map map=new HashMap();
map.put("1", "aa");
map.put("2", "bb");
map.put("3", "cc");
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);
}

}

结果为1=aa,2=bb,3=cc;
//传统方式2 entrySet





@Test
public void test4(){
Map map=new LinkedHashMap();
map.put("1", "aa");
map.put("2", "bb");
map.put("3", "cc");
Set set=map.entrySet();
Iterator it=set.iterator();
while(it.hasNext()){
Map.Entry entry=(Map.Entry)it.next();
String key=(String) entry.getKey();
String value=(String) entry.getValue();
System.out.println(key+"="+value);
}
}

//增强for取map的第一种方法
@Test
public void test5(){
Map map=new LinkedHashMap();
map.put("1", "aa");
map.put("2", "bb");
map.put("3", "cc");
for(Object obj:map.keySet()){
String key=(String) obj;
String value=(String) map.get(key);
System.out.println(key+"="+value);
}
}

//增强for取map的第二种方法
@Test
public void test6(){
Map map=new LinkedHashMap();
map.put("1", "aa");
map.put("2", "bb");
map.put("3", "cc");
for(Object obj:map.entrySet()){
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 i:arr){
i=10;
}
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
}

结果为1,2,3而不是10
4,可变参数
public class kebiancanshu {
@Test
public void testSum(){
sum(1,2,3);
sum(1,2,3,4,5,6);
}


public void  sum(int ...nums){
int sum=0;
for(int i:nums){
sum+=i;
}
System.out.println(sum);
}
}

结果为  6    21
可变参数需要注意的问题,类型问题
@Test
public void bb(){
List list=Arrays.asList("1","2","3");
System.out.println(list);
String arr[]={"1","2","3"};
list=Arrays.asList(arr);
System.out.println(list);
//如果为Integer则可以,结果为1,2,3,5
//如果为  int nums[]={1,2,3,5}; 结果为[[I@12cc95d]
Integer nums[]={1,2,3,5};
list=Arrays.asList(nums);
System.out.println(list);

}


评分

参与人数 1黑马币 +20 收起 理由
Rancho_Gump + 20 赞一个!

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马