前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java笔记(3)

Java笔记(3)

原创
作者头像
用户11062199
发布2024-05-31 20:47:04
680
发布2024-05-31 20:47:04

数据结构

集合(Collection)

list系列集合:

添加的元素是有序(录入)、可重复、有索引

代码语言:javascript
复制
 ArrayList<String> list = new ArrayList<>();
set系列集合:

添加的元素是无序,不重复,无索引的

.add() .contains(“STRING”) .size()

列表迭代器遍历

代码语言:javascript
复制
 ListIterator<String> iterator = list.listIterator();
         while (iterator.hasNext()){
             String s = iterator.next();
             if(s.equals("b")){
                 iterator.remove();//iterator.add("qqq");
             }
             System.out.println(s);
         }

集合遍历

  1. Iterator<E>iterator Iterator<String> iterator = collection.iterator(); while (iterator.hasNext()){ String s = iterator.next(); System.out.println(s); }
  2. 增强for for (String s : collection) { System.out.println(s); } //s是临时变量,如果修改了增强for中的变量是不会改变集合中原本的数据
  3. Lambda遍历 collection.forEach(s->System.out.println(s));
代码语言:javascript
复制
 Set<String>set1=new HashSet<>();
 Set<String> set = list.stream().collect(Collectors.toSet());

三种通用的遍历方式: 迭代器:在遍历的过程中需要删除元素,请使用迭代器。 增强for、Lambda: 仅仅想遍历,那么使用增强for或Lambda表达式

HashMap

Map是双列集合的顶层接口,他的功能是全部双列集合继承使用的

代码语言:javascript
复制
         //创建Map集合对象
         Map<String,String> m = new HashMap<>();
         //添加元素
         //put 添加和覆盖
         //如果键不存在则添加,返回null
         // 如果键存在则覆盖,并把原有的数据返回
         m.put("Leo","Ann");
         m.put("Luck","Lucy");
         String s = m.put("Anna","Lucy");
         System.out.println(s);//原数据中没有anna,所以返回null
 ​
         String s1 = m.put("Luck","Fuck");
         System.out.println(s1);
 ​
         String result = m.remove("Leo");
         System.out.println(result);
         //删除返回被删除的值
         String s2 = m.remove("Luck");
         System.out.println(s2);
         //判断键是否存在
         boolean valueResult = m.containsValue("Lucy");
         System.out.println(valueResult);
         boolean isResult = m.isEmpty();
         if(isResult){
             System.out.println("集合为空");
         }else{
             System.out.println("集合不为空");
         }
         System.out.println(m);
 ​
         Map<String,String>map = new HashMap<>();
         map.put("Leo","Ann");
         map.put("Luck","Lucy");
         map.put("Anna","Lucy");
 ​
         Set<String> keys = map.keySet();
 ​
         //增强for循环遍历
         for (String key : keys) {
             System.out.println(key);
             String value = map.get(key);
             System.out.println(key+"="+value);
         }
 ​
         //lambda表达式遍历
         map.keySet().forEach(key->{
             System.out.println(key);
             String value = map.get(key);
             System.out.println(key+"="+value);
         });
 ​
         //迭代器遍历
         Iterator<String> it = map.keySet().iterator();
         while(it.hasNext()){
             String key = it.next();
             System.out.println(key);
             String value = map.get(key);
             System.out.println(key+"="+value);
         }
 ​
         //增强for循环遍历
         Set<Map.Entry<String,String>> entrySet = map.entrySet();
         for (Map.Entry<String,String> entry : entrySet) {
             String key = entry.getKey();
             String value = entry.getValue();
             System.out.println(key+"="+value);
         }
 ​
         for(Map.Entry<String,String> entry : map.entrySet()){
             String key = entry.getKey();
             String value = entry.getValue();
             System.out.println(key+"="+value);
         }
 ​
         //lambda表达式遍历
         map.forEach(new BiConsumer<String, String>() {
             @Override
             public void accept(String key, String value) {
                 System.out.println(key + "=" + value);
             }
         });
         System.out.println("---------------------");
         map.forEach((String key,String value)->{
             System.out.println(key+"="+value);
         });
LinkedHashMap

二叉树(BinaryTree)

平衡二叉树
红黑树

idea常用快捷键

Alt + enter 一键补全

Alt + insert 一键初始化改写

Ctrl + n 查找类名源代码

Ctrl + b 查看源代码

Ctrl + Alt + m 代码提取,封装成方法

Ctrl + Alt + ← 回到上一个源码类

Ctrl + F12 查找用法

Ctrl + Alt + l 规范代码

Alt + 7 查看代码结构

Ctrl AIT v Runtime.getRuntime();===>Runtime runtime = Runtime.getRuntime();

添加依赖(导包)

在根目录新建lib文件夹,导入代码,并右键点击add as library

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 集合(Collection)
    • list系列集合:
      • set系列集合:
        • HashMap
          • LinkedHashMap
          • 二叉树(BinaryTree)
            • 平衡二叉树
              • 红黑树
              • idea常用快捷键
              • 添加依赖(导包)
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档