String API

在这里插入图片描述

Collection 集合

collection 是接口无法实例化对象
集合间操作需要在方法后面加All 例如 removeAll( 集合对象)
在这里插入图片描述

//当前集合c是否包含指定集合c2中的所有元素
System.out.println(c.containsAll(c2));
System.out.println(c.contains(200));//c是否包含单个指定元素200
System.out.println(c.removeAll(c2));//删除c集合中属于c2集合的所有元素
System.out.println(c);
System.out.println(c.add(5));
System.out.println(c);
System.out.println(c.retainAll(c2));//取c集合与c2集合的交集(公共元素)
————————————————
版权声明:本文为CSDN博主「程序媛 泡泡」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43884234/article/details/117014424

List 接口

在这里插入图片描述

System.out.println(list.indexOf("小蝴蝶"));//3,获取指定元素第一次出现的索引
System.out.println(list.lastIndexOf("小蝴蝶"));//8,获取指定元素最后一次出现的索引

LinkedList 类

在这里插入图片描述

Set 接口 (多用于去重)

继承于Collection接口 方法是继承的方法

Map 集合

在这里插入图片描述

//根据key值获取到对应的value值
System.out.println(map.get(9530));
//根据此key值对应的键值对,K与V都删了
System.out.println(map.remove(9529));
System.out.println(map.containsKey(9529));
System.out.println(map.containsValue("鲤鱼精"));
//将map集合中的所有value取出,放入Collection集合中
//Collection<Type>中Type的类型,取决于map中value的类型
Collection<String> values = map.values();
System.out.println(values);//[女儿国国王, 黑熊精, 黄毛怪, 黑熊精]
————————————————
版权声明:本文为CSDN博主「程序媛 泡泡」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43884234/article/details/117073174

Map 集合的迭代

      //4.map集合的迭代方式一
        /**方式一:
         * 遍历map中的数据,但是map本身没有迭代器,所以需要先转换成set集合
         * Set<Key>:把map中的所有key值存入到set集合当中--keySet()*/
        //4.1将map集合中的key值取出存入set集合中,集合的泛型就是key的类型Integer
        Set<Integer> keySet = map.keySet();
        //4.2想要遍历集合就需要获取集合的迭代器
        Iterator<Integer> it = keySet.iterator();
        //4.3循环迭代集合中的所有元素
        while(it.hasNext()){//判断是否有下一个元素可以迭代
            Integer key = it.next();//拿到本轮循环中获取到的map的key
            String value = map.get(key);
            System.out.println("{"+key+","+value+"}");
        }

        /**方式二:
         * 遍历map集合,需要把map集合先转成set集合
         * 是把map中的一对键值对key&value作为一个Entry<K,V>整体放入set
         * 一对K,V就是一个Entry*/
        Set<Map.Entry<Integer, String>> entrySet = map.entrySet();
        //获取迭代器
        Iterator<Map.Entry<Integer, String>> it2 = entrySet.iterator();
        while(it2.hasNext()){//判断是否有下一个元素可迭代
            //本轮遍历到的一个Entry对象
            Map.Entry<Integer, String> entry = it2.next();
            Integer key = entry.getKey();//获取Entry中的key
            String value = entry.getValue();//获取Entry中的value
            System.out.println("{"+key+","+value+"}");
        }
————————————————
版权声明:本文为CSDN博主「程序媛 泡泡」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43884234/article/details/117073174

反射使用的 API

获取字节码对象的3中方式:

  1. 类名.class;
  2. Class.forName(“包名.类名”);
  3. 对象.getClass();

获取public成员变量
aClass 为字节码对象

Field[] fields = aClass.getFields();

获取构造函数

Constructor<?>[] constructors = aClass.getConstructors();

获取方法

Method[] methods = aClass.getMethods();

暴力反射

获取指定的成员变量并赋值

Class<Person> personClass = Person.class; // 获取字节码对象
Person person1 = personClass.newInstance();// 调用无参构造函数创建对象
Field addr = personClass.getDeclaredField("addr");// 获取指定的成员变量,参数为 变量的名字
addr.setAccessible(true);// 变量为私有属性时需要设置私有可见权限
addr.set(person1, "上海");// 给变量赋值

获取指定的方法

		Class<?> personClass = Class.forName("cn.tedu.reflection.Person");
        /* getDeclaredMethod(m,x,y,z....);
         * m:要获取方法的名字
         * x,y,z....   可变参数  根据具体方法决定  表示获取的方法的参数 */
        Method method = personClass.getDeclaredMethod("save", int.class, String.class);
        Object o = personClass.newInstance();
        method.setAccessible(true);
        /*invoke(o,x,y,z...)  通过反射技术执行方法
         * o: 要那个对象的方法
         * x,y,z...  方法需要的参数*/
        method.invoke(o, 6, "五");

使用含参构造创建对象

  • 需要先获取构造方法
  • 再使用 构造方法对象.newInstance(对应的参数);
 		Constructor<Student> constructor = studentClass.getConstructor(String.class,int.class);
        Student s1 = constructor.newInstance("李四", 78);

IO流

SpringMVC 中提供了对 IO 操作的 API MultipartFile

文件操作

File(String pathname)通过将给定路径名字符串转换为抽象路径名来创建一个新的File实例化对象
new File(“d:/abc/a.txt”);
new File(“d:/abc”,”a.txt”);
在这里插入图片描述

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐