本文整理了Java中com.google.common.hash.Hashing.murmur3_32()
方法的一些代码示例,展示了Hashing.murmur3_32()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Hashing.murmur3_32()
方法的具体详情如下:
包路径:com.google.common.hash.Hashing
类名称:Hashing
方法名:murmur3_32
[英]Returns a hash function implementing the 32-bit murmur3 algorithm, x86 variant (little-endian variant), using a seed value of zero.
The exact C++ equivalent is the MurmurHash3_x86_32 function (Murmur3A).
[中]返回实现32-bit murmur3 algorithm, x86 variant(小端变量)的哈希函数,使用零种子值。
确切的C++等效是MurMHHAS3XX86Y32函数(MurMur3a)。
代码示例来源:origin: thinkaurelius/titan
@Override
public HashFunction get() {
return Hashing.murmur3_32();
}
},
代码示例来源:origin: JanusGraph/janusgraph
@Override
public HashFunction get() {
return Hashing.murmur3_32();
}
},
代码示例来源:origin: Graylog2/graylog2-server
@Override
protected String getDigest(String value) {
return Hashing.murmur3_32().hashString(value, StandardCharsets.UTF_8).toString();
}
代码示例来源:origin: google/guava
@Override
public byte[] hash(byte[] input, int seed) {
return murmur3_32(seed).hashBytes(input).asBytes();
}
};
代码示例来源:origin: google/guava
@SuppressWarnings("deprecation")
public void testSimpleStringUtf8() {
assertEquals(
murmur3_32().hashBytes("ABCDefGHI\u0799".getBytes(Charsets.UTF_8)),
murmur3_32().hashString("ABCDefGHI\u0799", Charsets.UTF_8));
}
代码示例来源:origin: google/guava
@SuppressWarnings("deprecation")
public void testInvalidUnicodeHashString() {
String str =
new String(
new char[] {'a', Character.MIN_HIGH_SURROGATE, Character.MIN_HIGH_SURROGATE, 'z'});
assertEquals(
murmur3_32().hashBytes(str.getBytes(Charsets.UTF_8)),
murmur3_32().hashString(str, Charsets.UTF_8));
}
代码示例来源:origin: springside/springside4
/**
* 对输入字符串进行murmur32散列, 返回值可能是负数
*/
public static int murmur32AsInt(@NotNull String input) {
return Hashing.murmur3_32(MURMUR_SEED).hashString(input, Charsets.UTF_8).asInt();
}
代码示例来源:origin: springside/springside4
/**
* 对输入字符串进行murmur32散列, 返回值可能是负数
*/
public static int murmur32AsInt(@NotNull byte[] input) {
return Hashing.murmur3_32(MURMUR_SEED).hashBytes(input).asInt();
}
代码示例来源:origin: google/guava
public void testMurmur3_32() {
HashTestUtils.check2BitAvalanche(Hashing.murmur3_32(), 250, 0.20);
HashTestUtils.checkAvalanche(Hashing.murmur3_32(), 250, 0.17);
HashTestUtils.checkNo2BitCharacteristics(Hashing.murmur3_32());
HashTestUtils.checkNoFunnels(Hashing.murmur3_32());
HashTestUtils.assertInvariants(Hashing.murmur3_32());
assertEquals("Hashing.murmur3_32(0)", Hashing.murmur3_32().toString());
}
代码示例来源:origin: google/guava
public void testInvalidUnicodeHasherPutString() {
String str =
new String(
new char[] {'a', Character.MIN_HIGH_SURROGATE, Character.MIN_HIGH_SURROGATE, 'z'});
assertEquals(
murmur3_32().hashBytes(str.getBytes(Charsets.UTF_8)),
murmur3_32().newHasher().putString(str, Charsets.UTF_8).hash());
}
}
代码示例来源:origin: google/guava
public void testInvariants() {
HashTestUtils.assertInvariants(murmur3_32());
}
代码示例来源:origin: google/guava
@Override
public byte[] hash(byte[] input, int seed) {
Hasher hasher = murmur3_32(seed).newHasher();
Funnels.byteArrayFunnel().funnel(input, hasher);
return hasher.hash().asBytes();
}
};
代码示例来源:origin: google/guava
@SuppressWarnings("deprecation")
public void testStringInputsUtf8() {
Random rng = new Random(0);
for (int z = 0; z < 100; z++) {
String str;
int[] codePoints = new int[rng.nextInt(8)];
for (int i = 0; i < codePoints.length; i++) {
do {
codePoints[i] = rng.nextInt(0x800);
} while (!Character.isValidCodePoint(codePoints[i])
|| (codePoints[i] >= Character.MIN_SURROGATE
&& codePoints[i] <= Character.MAX_SURROGATE));
}
StringBuilder builder = new StringBuilder();
for (int i = 0; i < codePoints.length; i++) {
builder.appendCodePoint(codePoints[i]);
}
str = builder.toString();
assertEquals(
murmur3_32().hashBytes(str.getBytes(Charsets.UTF_8)),
murmur3_32().hashString(str, Charsets.UTF_8));
}
}
代码示例来源:origin: google/guava
public void testKnownStringInputs() {
assertHash(0, murmur3_32().hashUnencodedChars(""));
assertHash(679745764, murmur3_32().hashUnencodedChars("k"));
assertHash(1510782915, murmur3_32().hashUnencodedChars("hell"));
assertHash(-675079799, murmur3_32().hashUnencodedChars("hello"));
assertHash(1935035788, murmur3_32().hashUnencodedChars("http://www.google.com/"));
assertHash(
-528633700, murmur3_32().hashUnencodedChars("The quick brown fox jumps over the lazy dog"));
}
代码示例来源:origin: google/guava
public void testKnownLongInputs() {
assertHash(1669671676, murmur3_32().hashLong(0L));
assertHash(-846261623, murmur3_32().hashLong(-42L));
assertHash(1871679806, murmur3_32().hashLong(42L));
assertHash(1366273829, murmur3_32().hashLong(Long.MIN_VALUE));
assertHash(-2106506049, murmur3_32().hashLong(Long.MAX_VALUE));
}
代码示例来源:origin: google/guava
public void testConcatenatingHashFunction_makeHash() {
byte[] md5Hash = Hashing.md5().hashLong(42L).asBytes();
byte[] murmur3Hash = Hashing.murmur3_32().hashLong(42L).asBytes();
byte[] combined = new byte[md5Hash.length + murmur3Hash.length];
ByteBuffer buffer = ByteBuffer.wrap(combined);
buffer.put(md5Hash);
buffer.put(murmur3Hash);
HashCode expected = HashCode.fromBytes(combined);
assertEquals(
expected, Hashing.concatenating(Hashing.md5(), Hashing.murmur3_32()).hashLong(42L));
assertEquals(
expected, Hashing.concatenating(asList(Hashing.md5(), Hashing.murmur3_32())).hashLong(42L));
}
代码示例来源:origin: google/guava
public void testKnownIntegerInputs() {
assertHash(593689054, murmur3_32().hashInt(0));
assertHash(-189366624, murmur3_32().hashInt(-42));
assertHash(-1134849565, murmur3_32().hashInt(42));
assertHash(-1718298732, murmur3_32().hashInt(Integer.MIN_VALUE));
assertHash(-1653689534, murmur3_32().hashInt(Integer.MAX_VALUE));
}
代码示例来源:origin: google/guava
public void testConcatenating_equals() {
new EqualsTester()
.addEqualityGroup(Hashing.concatenating(asList(Hashing.md5())))
.addEqualityGroup(Hashing.concatenating(asList(Hashing.murmur3_32())))
.addEqualityGroup(
Hashing.concatenating(Hashing.md5(), Hashing.md5()),
Hashing.concatenating(asList(Hashing.md5(), Hashing.md5())))
.addEqualityGroup(
Hashing.concatenating(Hashing.murmur3_32(), Hashing.md5()),
Hashing.concatenating(asList(Hashing.murmur3_32(), Hashing.md5())))
.addEqualityGroup(
Hashing.concatenating(Hashing.md5(), Hashing.murmur3_32()),
Hashing.concatenating(asList(Hashing.md5(), Hashing.murmur3_32())))
.testEquals();
}
代码示例来源:origin: google/guava
public void testConcatenatingIterable_bits() {
assertEquals(
Hashing.md5().bits() + Hashing.md5().bits(),
Hashing.concatenating(asList(Hashing.md5(), Hashing.md5())).bits());
assertEquals(
Hashing.md5().bits() + Hashing.murmur3_32().bits(),
Hashing.concatenating(asList(Hashing.md5(), Hashing.murmur3_32())).bits());
assertEquals(
Hashing.md5().bits() + Hashing.murmur3_32().bits() + Hashing.murmur3_128().bits(),
Hashing.concatenating(asList(Hashing.md5(), Hashing.murmur3_32(), Hashing.murmur3_128()))
.bits());
}
代码示例来源:origin: google/guava
public void testConcatenatingVarArgs_bits() {
assertEquals(
Hashing.md5().bits() + Hashing.md5().bits(),
Hashing.concatenating(Hashing.md5(), Hashing.md5()).bits());
assertEquals(
Hashing.md5().bits() + Hashing.murmur3_32().bits(),
Hashing.concatenating(Hashing.md5(), Hashing.murmur3_32()).bits());
assertEquals(
Hashing.md5().bits() + Hashing.murmur3_32().bits() + Hashing.murmur3_128().bits(),
Hashing.concatenating(Hashing.md5(), Hashing.murmur3_32(), Hashing.murmur3_128()).bits());
}
内容来源于网络,如有侵权,请联系作者删除!