map:根据 value 找 key ?

map:根据 value 找 key ?在之前的学习中,我们在使用map的时候,都是利用key找value。之前我们使用的函数是find,若存在,返回查找到的指向第一个key的迭代器,若不存在,返回尾后迭代器。反过头来想一想,我们可不可以根据value找key呢?答案是肯定的。我们使用find_if+lambda可以实现。返回值和find一致。实例1:std::strings="c";autofin…

大家好,又见面了,我是你们的朋友全栈君。

在之前的学习中,我们在使用map的时候,都是利用key找value。

之前我们使用的函数是find,若存在,返回查找到的指向第一个key的迭代器,若不存在,返回尾后迭代器。

反过头来想一想,我们可不可以根据value找key呢?

答案是肯定的。

我们使用find_if +lambda可以实现。返回值和find一致。


实例1:

std::string s = "c";
auto find_item = std::find_if(t.begin(), t.end(),
    [s](const std::map<int, std::string>::value_type item)
{
    return item.second == s;
});

int n = 0;
if (find_item!= t.end())
{
    n = find_item->first;
}

根据value为c,找对应的key!!!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/163557.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 2020最新版Net加壳工具

    2020最新版Net加壳工具VirboxProtector发布最新版本Net加壳工具:VirboxProtector2.VirboxProtector为.NETFramework编写的软件做代码保护,防止代码被反编译,防止IL代码在内存被Dump。同时可配合授权产品实现软件的许可管理。加密技术VirboxProtector.NET版通过多种保护方式来防止反编译,加密后可让任何现有工具都无法反编译。JIT加密将.NET所有方法的IL指令经过加密,仅在.NET虚拟机进行J.

    2022年6月27日
    80
  • sqlserver截断字符和二进制数据_SQL异常字符串截断

    sqlserver截断字符和二进制数据_SQL异常字符串截断错误信息提示:  Java代码  Error! [8152]System.Data.SqlClient.SqlException: 将截断字符串或二进制数据。语句已终止。   原因:增加的数据类型与数据库中字段所定义的不符。 解决方法:1、修改数据库字段大小;2、加强数据强壮性,严格的输入判断。 防止添加的信息类型或者长度与数据库表中字段所对应的类型不符合。…

    2022年10月6日
    1
  • Linux 添加开机启动项的三种方法

    Linux 添加开机启动项的三种方法

    2022年4月3日
    40
  • 【spring】事务管理的实现

    【spring】事务管理的实现【spring】事务管理的实现

    2022年4月25日
    42
  • sqlplus远程连接oracle数据库命令(数据库mysql基本语句)

    SQLPLUS远程连接数据库1、首先去oracle的官方网站上http://www.oracle.com/technology/software/tech/oci/instantclient/index.html下载(下面是10g的):instantclient-basic-win32-10.2.0.4.zipinstantclient-odbc-win32-10.2.0.4.zipinstan…

    2022年4月13日
    58
  • SIGPIPE信号的产生及处理

    SIGPIPE信号的产生及处理SIGPIPE信号的产生在tcp四次挥手过程中,发送方向已经调用close()方法的socket一端写数据,会产生sigpipe错误。close():关闭读写两个方向,会导致sigpipe信号shutdown():可以选择关闭读/写方向,不会导致sigpipe信号SIGPIPE信号的解决方法直接忽略sigpipe信号voidhandle_for_sigpipe(){str…

    2022年7月17日
    20

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号