map相关方法的学习

package com.weiyi.study.ss;

import com.google.common.collect.Maps;
import org.junit.Test;

import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;

/**
 * map相关方法的学习
 * @author <a href="mailto:shizi@microants.cn">狮子</a>
 * version 1.0.0
 * since 1.0.0
 */
public class mapTest {
    /**
     * 测试putAll()方法,将一个map集合的元素添加到另一个集合中
     */
    @Test
    public void test(){
        HashMap<String, String> map = Maps.newHashMap();
        HashMap<String, String> map1 = Maps.newHashMap();
        map.put("1","zhangsan");
        map.put("2","lisi");
        map.put("3","wangfu");
        map.put("4","zhaoliu");
        map1.put("5","sunqi");
        map1.put("6","yangba");
        System.out.println("map中的元素有:" + map);
        System.out.println("===============================");
        System.out.println("map1中的元素有:" + map1);
        map.putAll(map1);
        System.out.println("===============================");
        System.out.println("map和map1的元素总和:" + map);
    }

    /**
     * clear(): 清除map中的元素
     */
    @Test
    public void test2(){
        HashMap<String, String> map = Maps.newHashMap();
        map.put("1","zhangsan");
        map.put("2","lisi");
        map.put("3","wangfu");
        map.put("4","zhaoliu");
        System.out.println("调用clear()方法之前" + map);
        map.clear();
        System.out.println("调用clear()方法之后" + map);
    }

    /**
     * containsKey():判断map中是否包含指定的键
     */
    @Test
    public void test3(){
        HashMap<String, String> map = Maps.newHashMap();
        map.put("1","zhangsan");
        map.put("2","lisi");
        map.put("3","wangfu");
        map.put("4","zhaoliu");
        System.out.println("map中是否包含键为1的元素========>" + map.containsKey("1"));
    }

    /**
     * containsValue():判断map中是否包含指定的值
     */
    @Test
    public void test4(){
        HashMap<String, String> map = Maps.newHashMap();
        map.put("1","zhangsan");
        map.put("2","lisi");
        map.put("3","wangfu");
        map.put("4","zhaoliu");
        System.out.println("map中是否包含值为lisi的元素========>" + map.containsValue("lisi"));
    }

    /**
     * entrySet():返回map到一个Set集合中,以map集合中的Key=Value的形式返回到set中
     */
    @Test
    public void test5(){
        HashMap<String, String> map = Maps.newHashMap();
        map.put("1","zhangsan");
        map.put("2","lisi");
        map.put("3","wangfu");
        map.put("4","zhaoliu");
        Set<Map.Entry<String, String>> entrySet = map.entrySet();
        System.out.println(entrySet);
    }

    /**
     * 遍历map
     */
    @Test
    public void test6(){
        HashMap<String, String> map = Maps.newHashMap();
        map.put("1","zhangsan");
        map.put("2","lisi");
        map.put("3","wangfu");
        map.put("4","zhaoliu");
        Set<Map.Entry<String, String>> entrySet = map.entrySet();
        entrySet.stream().forEach(i -> {
            System.out.println("键为====》" + i.getKey() + "值为====》" + i.getValue());
        });
    }

    /**
     *equals() : 判断一个map集合和另一个map集合是否相等(指map集合中的元素是否相等)
     */
    @Test
    public void test7(){
        HashMap<String, String> map = Maps.newHashMap();
        map.put("1","zhangsan");
        map.put("2","lisi");
        HashMap<String, String> map1 = Maps.newHashMap();
        map1.put("1","zhangsan");
        map1.put("2","lisi");
        System.out.println("map和map1是否相等" + map.equals(map1));
    }

    /**
     * keySet():取map中key的集合
     */
    @Test
    public void test8(){
        HashMap<String, String> map = Maps.newHashMap();
        map.put("1","zhangsan");
        map.put("2","lisi");
        map.put("3","wangfu");
        map.put("4","zhaoliu");
        Set<String> keySet = map.keySet();
        System.out.println(keySet);
    }

    /**
     * remove():删除指定key值的元素
     */
    @Test
    public void test9(){
        HashMap<String, String> map = Maps.newHashMap();
        map.put("1","zhangsan");
        map.put("2","lisi");
        map.put("3","wangfu");
        map.put("4","zhaoliu");
        System.out.println("调用remove()方法之前的map元素的集合=========>" + map);
        map.remove("3");
        System.out.println("调用remove()方法之后的map元素的集合=========>" + map);
    }

    /**
     * 取map集合中的values集合
     */

    @Test
    public void test10(){
        HashMap<String, String> map = Maps.newHashMap();
        map.put("1","zhangsan");
        map.put("2","lisi");
        map.put("3","wangfu");
        map.put("4","zhaoliu");
        map.values().stream().forEach(System.out::println);
    }


}
### 在 VSCode 中配置和使用 Samba 为了在 VSCode 中通过 Samba 访问远程 Linux 机器上的文件,可以按照以下方法进行配置: #### 配置 Samba 服务器Linux 机器上安装并配置 Samba 服务。首先安装 Samba: ```bash sudo apt update sudo apt install samba ``` 编辑 Samba 配置文件以共享目录: ```bash sudo vim /etc/samba/smb.conf ``` 在文件末尾添加以下内容以创建一个共享目录[^2]: ```ini [shared] comment = Shared Folder path = /path/to/shared/folder browseable = yes writable = yes valid users = username create mask = 0777 directory mask = 0777 ``` 创建一个用于访问的 Samba 用户: ```bash sudo smbpasswd -a username ``` 重启 Samba 服务以应用更改: ```bash sudo service smbd restart ``` #### 在 Windows 上映射网络驱动器 在 Windows 上打开“此电脑”或“文件资源管理器”,右键选择“添加网络位置”。输入 Linux 机器的 Samba 共享路径,例如: ``` \\<Linux_IP>\shared ``` 当提示输入用户名和密码时,使用之前创建的 Samba 用户名和密码。 #### 在 VSCode 中访问共享文件夹 完成上述步骤后,可以在 VSCode 中打开映射的网络驱动器中的文件夹。启动 VSCode 并选择“文件”->“打开文件夹”,导航到映射的网络驱动器路径。现在可以像编辑本地文件一样编辑这些文件[^1]。 #### 编译和调试 对于编译和调试,可以在 Linux 机器上运行编译命令和调试工具,同时在 WindowsVSCode 中修改代码。如果需要在 Windows 上直接编译,可以安装 MinGW 工具链,并配置 VSCode 的 C++ 扩展以支持跨平台开发[^3]。 ### 注意事项 确保网络连接稳定,Samba 配置正确且权限设置适当。此外,建议定期检查 Samba 日志以排查可能的问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值