java中 String... 和 instanceof关键字的使用

调用方法

java中 String... 和 instanceof关键字的使用

具体方法实现

java中 String... 和 instanceof关键字的使用


今天在项目中看到一段代码,之前没见过。特此记录一下,自己写了一段测试代码,具体代码的作用我就写在注释上面了



public class Mytests {
//创建
private Mytests() {
test();
test("a", "b");
test(new String[] { "aaa", "bbb" });
test("ccc");
}


private void test() {
System.out.println("test");
}


private void test(String... strings) {
for (String str : strings) {
System.out.print(str + ", ");
}
System.out.println();
}


public static void main(String[] args) {
new Mytests();
Map map = new HashMap();
map.put("name", "吴林飞");
map.put("age", "23");
map.put("sex", "男");
map.put("sex", "男");
List lsit = new ArrayList<>();
lsit.add(1);
lsit.add(2);
lsit.add(3);
map.put("list", lsit);
System.out.println("map+" + map.get("list"));
Mytests.sss(map, "name", "age", "sex", "list");


}
//String... 类型后面跟三个".",表示能够定义多个参数,这段代码中是将参数作为map的key来使用的
public static void sss(Map map, String... params) {
for (String s : params) {

System.out.println(s + "|||" + params);

                        //instanceof 这个关键字标识对比值是否是list类型,当然这边也可以是对象,后面的类型也是是其他的,map,String等等都可以

if (map.get(s) instanceof List) {
System.out.println("list" + map.get(s));
break;
} else {
System.out.println("进入这个了" + s);
}
}
}

}

上面这段代码执行之后的运行结果:

java中 String... 和 instanceof关键字的使用