标签: map

如何在常规地图中使用正则表达式

我有一张类似的地图。

     xxx-10.name ='welcome'
     xxx-10.age  ='12'
     xxx-10.std  ='2nd'

     xxx-12.name ='welcome'
     xxx-12.age  ='12'
     xxx-12.std  ='2nd'

     yyy-10.name ='welcome'
     yyy-10.age  ='12'
     yyy-10.std  ='2nd'

     yyy-12.name ='welcome'
     yyy-12.age  ='12'
     yyy-12.std  ='2nd'
Run Code Online (Sandbox Code Playgroud)

wen 用户给出 xxx 我必须返回包含所有 xxx 条目的子图,而不管与之关联的数字是多少。有没有办法使用正则表达式来实现这一目标?或者没有迭代键?

我可以使用该实用程序获得子地图..

collections groovy map

1
推荐指数
1
解决办法
2578
查看次数

使用过滤器和映射使用 python 查找扩展名为 .txt 和 .py 的目录中的所有文件

如何使用过滤器和映射函数在以 Python结尾.txt.py以 Python结尾的目录中查找文件?

python tuples map filter

1
推荐指数
1
解决办法
6753
查看次数

Map<String, ?> 怎么用

我需要在 java 中使用 Map 中的“?” 可以是任何类型的值,如整数、布尔值、长整数等。这就是我所拥有的:

Map<String, ?> prefs = Preferences.GetPrefs();

// Now I would like to use it to add new values...
prefs.put("Hi", true); // <-- error
Run Code Online (Sandbox Code Playgroud)

我怎样才能使用它?谢谢

java casting map

1
推荐指数
1
解决办法
1332
查看次数

如何向 Leaflet.js 地图添加指北针?

有没有一种简单的方法可以向 Leaflet.js 地图添加指北针?我在网上搜索了一些,但找不到太多。

map leaflet

1
推荐指数
1
解决办法
3790
查看次数

Javascript“地图”在 IE 中不起作用

我有以下 javascript -

var trim = intsAsJSArray.replace(/[\[\]]/g, "");
       var data = trim.split(",");

       data = data.map(function (d) {
           return +d;
       });
Run Code Online (Sandbox Code Playgroud)

但是,这在 IE 中失败并出现错误 -

Error: Object doesn't support property or method 'map'
Run Code Online (Sandbox Code Playgroud)

这很令人困惑,因为它同时适用于 Chrome 和 FireFox。为什么是这样?

javascript jquery map

1
推荐指数
1
解决办法
5697
查看次数

'MY_MAP' 之前的声明符无效

尝试使用字符串作为键和自定义类 Link 作为存储值制作地图,但一直在标题中出现错误。这是我所拥有的:

typedef std::map<std::string, Link>  MY_MAP;
Run Code Online (Sandbox Code Playgroud)

和链接类:

class Link{

typedef  std::map<std::string, Link>  map_type;

public:
Link(){ next = NULL; val = 0; };
~Link(){ delete next; };
std::string key;
int val;
map_type* next;
}
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?谢谢!

typedef map

1
推荐指数
1
解决办法
1883
查看次数

如何检索与密钥关联的所有值?

我想在Map中获取与键相关的所有值.例如,

Map tempMap = new HashMap();
tempMap.put("1","X");
tempMap.put("2","Y");
tempMap.put("3","Z");
tempMap.put("1","ABC");
tempMap.put("2","RR");
tempMap.put("1","RT");
Run Code Online (Sandbox Code Playgroud)

如何检索与键1相关的所有值?

java map

0
推荐指数
2
解决办法
670
查看次数

std :: map design:为什么map接受比较器作为模板参数

STL的地图类型有下一个类型:

std::map< Key, Data, Compare, Alloc >
Run Code Online (Sandbox Code Playgroud)

作为模板参数之一,我们可以传递Compare谓词,为什么map接受这个谓词作为模板参数而不是构造函数中的对象?

它可以boost::function< bool, const T&, const T& >在构造函数中具有更灵活的界面.
当然,我强调,当STL被设计时,boost不存在,但设计师可以在boost :: function上创建类似的东西.

我相信它有一些深层次的原因.

编辑
抱歉对于虚拟问题,地图有相同的可能性:)
我的问题没有意义后你的答案.

c++ boost stl map

0
推荐指数
2
解决办法
1165
查看次数

如何将"Pair"或n-size插入列表集合而不是编写HashMaps?

所以,我有一种情况需要将三个值传递给一个串行的BlockingQueue队列:

(SelectableChannel, ComponentSocketBasis, Integer).
Run Code Online (Sandbox Code Playgroud)

它们实际上根本不需要进行哈希映射,并且使用HashMap是荒谬的,因为每个条目总是只有一个键; 如果他们只是在某种有序的集合中,那就好了.但是,由于缺少已知的替代方法,我在我的实现中使用了HashMap并生成了这个混淆的泛型组合:

private LinkedBlockingQueue<HashMap<HashMap<SelectableChannel, ComponentSocketBasis>, Integer>> deferredPollQueue = new LinkedBlockingQueue<HashMap<HashMap<SelectableChannel, ComponentSocketBasis>, Integer>>();
Run Code Online (Sandbox Code Playgroud)

这看起来真的很荒谬.我必须是一个可怕的n00b.当然有一种更好的方法可以做到这一点,不需要我在检索值时分解密钥或浪费(理论上 - 实际上,Java总是臃肿:)算法复杂性对无用的哈希计算我不需要因为我的密钥空间为1,甚至不想关联映射三个引用,而只是将它们分组?有了这个实现,我必须这样取出值:

while(deferredPollQueue.size() > 0) {
    System.out.println("*** Draining new socket channel from queue");
    HashMap<HashMap<SelectableChannel, ComponentSocketBasis>, Integer> p = deferredPollQueue.take();

    SelectableChannel chan = null;
    ComponentSocketBasis sock = null;
    int ops = 0;

    HashMap<SelectableChannel, ComponentSocketBasis> q = p.keySet().iterator().next();

    chan = q.keySet().iterator().next();
    sock = q.get(chan);

    ops = p.get(q).intValue();

    SelectionKey k = chan.register(selector, ops);  

    if(!channelSupervisorMap.containsKey(k))
        channelSupervisorMap.put(k, sock);
}
Run Code Online (Sandbox Code Playgroud)

我很确定每一个有能力的人都认为这是一种荒谬的方式,所以问题是 - 什么是正确的方法?:)我无法在任何地方找到java.util.Pair或java.util.Triplet的证据.

我认为Orthodox Way(TM)只是为了容纳这个三元组而做一个自定义类或接口,但是对于这么大的系统中的这么小的任务来说,这似乎是荒谬的冗长和不必要的 - 尽管如此,那是Java本身.

出于同样的原因,也许这些值可以放在ArrayList或Vector或它们的衍生物上,但是在Java中,这并没有比我从这个HashMap中获得更简洁的解决方法,尽管它确实解决了也许是算法复杂性问题.

回到Perl …

java queue collections map dataset

0
推荐指数
1
解决办法
1062
查看次数

删除第一对后,STL映射不会添加一对

在这段代码中,我在地图上添加了一对,一切都很好但是当我删除一对不是最后一对时,地图不再添加任何对.我做错了什么?

SomeClass::add(Object object)
if (!object.empty())
{
    ObjectList::iterator result = find(object.name());
    if (result == ObjectList.end())
    {
        object.order(size() + 1);
        ObjectList.insert(orderedObject(object.order(), object));
    }
    else
    {
        ObjectList[result->first] = object;
    }
}
Run Code Online (Sandbox Code Playgroud)

ObjectList和orderedObject声明如下:

typedef std::pair<int, Object> orderedObject;
typedef std::map<int, Object> ObjectList;
Run Code Online (Sandbox Code Playgroud)

这是删除代码:

SomeClass::eraseNamed(std::string aName)
{
    if (!isEmpty())
    {
        ObjectList::iterator result;
        result = find(aName);
        if (result != ObjectList.end())
        {
            ObjectList.erase(result);
            reorgObjectList();
            return true;
        }

    }
    return false;
}
Run Code Online (Sandbox Code Playgroud)

对于查找方法:

ObjectList::iterator SomeClass::find(std::string aName)
{
    ObjectList::iterator result = ObjectList.begin();
    while (result != ObjectList.end())
    {
        if (aName == …
Run Code Online (Sandbox Code Playgroud)

c++ stl map

0
推荐指数
1
解决办法
455
查看次数

标签 统计

map ×10

java ×3

c++ ×2

collections ×2

stl ×2

boost ×1

casting ×1

dataset ×1

filter ×1

groovy ×1

javascript ×1

jquery ×1

leaflet ×1

python ×1

queue ×1

tuples ×1

typedef ×1