第十六课时

来源:互联网 发布:组队匹配算法 编辑:程序博客网 时间:2024/05/01 12:08

                                                        第十六课时

笔记1.泛型(Generic)

2.For-Each循环

3.自动装包/拆包(Autoboxing/unboxing)

4.枚举(Enums)

5.可变参数(Varargs)

6.静态导入(Static Imports)

7.注释(annotation)

for-each的语法是  int[] is = {2,3,5,1,6,4};  for(int i:is){}

可变参数的语法(String ... ss)

                            (inti,String... ss) 可变参数一定要在参数的最后一位,否则就是编译错误

如下例子

package t16;

import java.util.*;

public class ForEachSample{

         publicstatic void main(String[] args){

                   ArrayList<String>arr = new ArrayList<String>()

                   arr.add("aaa");

                   arr.add("bbb");

                   arr.add("ccc");

                   int[]is = {2,3,5,1,6,4};

                   /************************迭代collection的方式***********************/

                   Iterator<String>it= arr.iterator();

                   while(it.hasNext()){

                            Strings = it.next();

                            it.remove();

                   }

                   /**********************遍历数组的方式************************/

                   for(inti=0;i<is.length;i++){

                            System.out.println(is[i]);

                   }

                   /************************for-each***************************/

                   /*for(inti=0;i<arr.size();i++){

                            Strings = arr.get(i);

                   }*/

                   for(Strings : arr){

                            System.out.println("foreach:" + s);

                   }

                   System.out.println("------------------");

                   for(inti:is){

                            System.out.println("foreach:"+i);

                   }

         }

}

package t16;

public class VarSample{

         publicstatic void main(String[] args){

                   m1("hello");//调用一个字符串参数的方法

                   m1("hello1","hello2");//调用两个参数的方法

                   m1("a","b","c","d","e");//调用...

         }

         publicstatic void m1(String s1){

                   System.out.println("m1(String): "+s1);

         }

         publicstatic void m1(String s1,String s2){

                   System.out.println("m1(String,String): "+s1);

                   System.out.println("m1(String,String): "+s2);

         }

         publicstatic void m1(String ... ss){

                   for(Strings : ss){

                            System.out.println("m1(String...): " + s);

                   }

         }

         //publicstatic void m1(String... ss,int i){编译错误,可变参数一定要在参数的最后一位

         publicstatic void m1(int i,String... ss){

         }

}

 

package a16;

public class VarSample{

         publicstatic void method1(String s1){

                   System.out.println("thismethod1...");

         }

         publicstatic void method2(String s1,String s2){

                   System.out.println("thismethod2...");

         }

         publicstatic void method3(String s1,String s2,String i){

                   System.out.println("thismethod3...");

         }

         publicstatic void method4(String...s){

                   //如果用了for-each循环那么,main方法中的打印都是用methods4,除了不是String参数的

                   for(Stringss:s){         

                   System.out.println("this...method4...:"+ss);

                   }

         }

         //如果又多个类型的参数的时候,可变参数一定要放在最后面

         publicstatic void method5(int w,String...s){

                   System.out.println("thisis method5...");

         }

         publicstatic void method6(String s,int m){

                   System.out.println("thisis method6...");

         }

         /*

         不允许这样用

         publicstatic void method7(int...i,String...s){

                   System.out.println("thismethod7...");

         }

         */

         publicstatic void main(String[] args){

                   method1("ccc");

                   method2("aaa","ssss");

                   System.out.println("-----------------------------");

                   VarSamplev=new VarSample();

                   v.method3("d","ff","g");

                   System.out.println("-----------------------------");

                   method3("a","f","e");

                   System.out.println("--*******************---------");

                   v.method4("a","f","e","a","f","e");

                   method5(1,"d");

                   v.method6("d",7);

         }

}

原创粉丝点击