Java 8 Clock hashCode() 方法和示例
Java Clock 类是Java的日期时间 API Java .time.Clock 的一部分。 Java日期时间 API 是从Java版本 8 添加的。
Clock 类的 hashCode() 方法返回此时钟对象的哈希码。 Clocks 对象根据其状态覆盖此方法。如果时钟对象未被覆盖,则此方法的行为由 Object.hashCode() 定义。如果对象没有改变,哈希码总是相同的。
Hashcode 是 JVM 在创建对象时生成的唯一代码。它可用于对哈希表、哈希图等哈希相关算法执行一些操作。也可以使用其唯一代码(哈希码)搜索对象。
句法:
public int hashCode()
返回:此方法为此时钟方法返回一个合适的哈希码。
例子:
Input::
a clock class Object e.g Clock.systemDefaultZone()
Output::
HashCode e.g. 227139178
Explanation::
when hashCode() is called, then it will return a hashCode for Class Object.
下面的程序说明了Java.time.Clock 类的 hashCode() 方法:
程序 1:使用 systemDefaultZone 创建时钟对象,并使用时钟对象的 hashCode() 获取哈希代码并打印它。
Java
// Java Program to demonstrate
// hashCode() method of Clock class
import java.time.*;
// create class
public class hashCodeMethodDemo {
// Main method
public static void main(String[] args)
{
// create Clock Object
Clock clock = Clock.systemDefaultZone();
// get hash Code of Clock
// object using hashCode() method
int code = clock.hashCode();
// print details of TimeZone
System.out.println("hash Code for class "
+ clock + " is " + code);
}
}
Java
// Java Program to demonstrate
// hashCode() method of Clock class
import java.time.*;
// create class
public class hashCodeMethodDemo {
// Main method
public static void main(String[] args)
{
// create a Zone Id for Calcutta
ZoneId zoneId = ZoneId.of("Asia/Calcutta");
// create Clock Object by passing zoneID
Clock clock = Clock.system(zoneId);
// get hash Code of Clock
// object using hashCode() method
int code = clock.hashCode();
// print details of TimeZone
System.out.println("hashCode for clock object "
+ clock + " is " + code);
}
}
输出:
hash Code for class SystemClock[Etc/UTC] is 227139178
程序 2:使用 hashCode() 获取带有“Asia/calcutta”区域的时钟对象的 HashCode
Java
// Java Program to demonstrate
// hashCode() method of Clock class
import java.time.*;
// create class
public class hashCodeMethodDemo {
// Main method
public static void main(String[] args)
{
// create a Zone Id for Calcutta
ZoneId zoneId = ZoneId.of("Asia/Calcutta");
// create Clock Object by passing zoneID
Clock clock = Clock.system(zoneId);
// get hash Code of Clock
// object using hashCode() method
int code = clock.hashCode();
// print details of TimeZone
System.out.println("hashCode for clock object "
+ clock + " is " + code);
}
}
输出:
hashCode for clock object SystemClock[Asia/Calcutta] is -681304889
参考:
https://docs.oracle.com/javase/8/docs/api/java Java