小编Max*_*ler的帖子

如何在c#中散列int []

我试图想办法从Vector2 []调用时覆盖GetHashCode().这段代码为我知道相同的对象产生非唯一的哈希:我将下面的类传递给相同的矩形,并生成不同的哈希码.

public Shape(Rectangle r)
        {
            edges = new Vector2[4];
            edges[0] = new Vector2(0, 0);
            edges[1] = new Vector2(r.Width, 0);
            edges[2] = new Vector2(r.Width, r.Height);
            edges[3] = new Vector2(0, r.Height);
            Console.Write(edges.GetHashCode() + "\n");
            Position = new Vector2(r.X, r.Y);                
        }
Run Code Online (Sandbox Code Playgroud)

Vector2数组只是一堆整数.如何为整数列表创建唯一的哈希?

.net c# int hash

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

迭代java中的泛型hashmap

我在我的抽象类中绘制了这个hashmap,我的意图是用每个延伸绘制的类的每个实例填充它.我像这样初始化地图:

public static HashMap<Integer, ? extends Drawn> drawns = new HashMap();
Run Code Online (Sandbox Code Playgroud)

我试图像这样添加元素到哈希表:

//this code is in the abstract class Drawn()
public void init(){
    idCount++;
    setID(idCount);
    drawns.put(idCount,this); 

  }
Run Code Online (Sandbox Code Playgroud)

然后我尝试迭代这样:

for(<Integer, ? extends Drawn> E : Drawn.drawns.values()) {
  E.draw();
}
Run Code Online (Sandbox Code Playgroud)

迭代器和init()代码都有编译时错误.但是,如果我将类型参数更改为Drawing而不是我可以编译所有内容,但是当我将子类的实例添加到哈希表时,迭代器不会检测到它们.

java generics iterator hashmap

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

标签 统计

.net ×1

c# ×1

generics ×1

hash ×1

hashmap ×1

int ×1

iterator ×1

java ×1