検索

Java Instant は、Java の事前定義されたメソッドのセットであり、プログラム内の特定の機能を実行するためにコード ブロックで使用できます。最も一般的に使用される Java インスタント メソッドのいくつかは、toString()、parse()、ofEpochMilli()、getEpochSecond()、getNano()、plusMillis(long milliToAdd)、plusNanos(long nanosToAdd)、plusSeconds(long SecondsToAdd)、minusSeconds です。 (long 秒ToSubtract)、minusMillis(long millisToSubtract)、minusNanos(long nanosToSubtract)、compareTo(Instant otherInstant)、isAfter(Instant otherInstant)、および isBefore(Instant otherInstant)。 Java のこの機能は、効率の高さ、優れたパフォーマンス、再利用性、最適化されたコード長などで知られています。

構文

Instant クラスは、Instant クラスのインスタンスを作成するための複数の静的ファクトリ メソッドを提供します。以下は、さまざまな標準値を持つ Instant クラスのインスタンスを取得できる静的メソッドです。

無料ソフトウェア開発コースを始めましょう

Web 開発、プログラミング言語、ソフトウェア テスト、その他

Instant instant = Instant.now();

メソッド now() は、システム クロックから現在の瞬間を返します。このインスタンスは、開始時刻または EPOCH からの合計ナノ秒数を表します。これは、1970 年 1 月 1 日の初めからカウントされた時間です。インスタントを取得するこのメソッドは、マシンのタイムスタンプを表すのに便利で、他のメソッドよりも頻繁に使用されます。

Instant instant = Instant.EPOCH;

この静的フィールドは、正確な EPOCH 時間を表す Instant クラスのインスタンスを返します。

Instant instant = Instant.MAX;

この静的フィールドは、インスタンスの最大値を表す Instant クラスのインスタンスを返します。

Instant instant = Instant.MIN;

この静的フィールドは、インスタンスの最小値を表すインスタント クラスのインスタンスを返します。値は負です。

Java Instant のメソッド

それでは、ここからが Instant クラスの主要部分または使用法です。以下は、Instant クラスに属する主なメソッドの一部のリストです。

  • toString(): このメソッドは、ISO-8601 標準を使用して文字列形式でインスタンスを表すために、Object クラスからオーバーライドされます。

以下は、Instant クラスのインスタンスを取得するために使用できるメソッドです。

  • parse(): このメソッドはテキスト文字列を引数として受け取り、渡された同じ値を表すインスタンス クラスのインスタンスを返します。文字列は UTC で即時有効である必要があります。
  • ofEpochMilli(): このメソッドは、入力長 (ミリ秒) を引数として受け取り、渡された同じ値を表すインスタンス クラスのインスタンスを返します。このメソッドは、java.util.Date オブジェクトを Instant に変換するために使用できます。

Instant クラスのインスタンスは、util.Date (ミリ秒精度) と比較して、ナノ秒精度で時間を表します。したがって、インスタントは、その値を保存するためにより多くのストレージ (ロングよりも大きい) を必要とします。したがって、インスタント クラスは秒の値を long 変数に格納し、残りのナノ秒の値を int 変数に格納します。以下のメソッドを使用して、これらの個別の値にアクセスできます。

  • getEpochSecond(): このメソッドは単に EPOCH から秒を返します。
  • getNano(): このメソッドは、タイムラインまたは秒の開始からナノ秒数を返します。

以下は瞬時の操作や計算に使用できるメソッドです。

  • plusMillis(long millisToAdd): このメソッドは、インスタントで渡された多くのミリ秒を追加し、新しいインスタントを返します。
注意: Instant クラスは不変クラスであるため、操作操作ごとに新しいインスタンスを返すことに注意してください。
  • plusNanos(long nanosToAdd): 前のものと似ていますが、ナノ秒が追加されています。
  • plusSeconds(long SecondsToAdd): 秒の加算。

マイナスまたは減算演算にも同様のメソッドが存在します。これらのメソッドは、インスタントから経過した秒数を減算し、新しいインスタントを返します。

  • minusSeconds(長い秒数を減算する)
  • minusMillis(long millisToSubtract)
  • minusNanos(long nanosToSubtract)

以下は 2 つの瞬間を比較するために使用できるメソッドです。

  • compareTo(Instant otherInstant): This method will compare the one instant with the passed one. Returns the integer value negative if it is less and positive if it is greater.
  • isAfter(Instant otherInstant): This method checks if the passed instant is after the current instant. Returns true or false.
  • isBefore(Instant otherInstant): Similar to the previous one, checks if the passed instant is before the current instant. Returns true or false.

Examples to Implement Java Instant

Below are the examples of implementing java instant:

1. toString()

Code:

import java.time.Instant;
public class app {
public static void main(String[] args) {
Instant instant = Instant.now();
System.out.println( instant.toString() );
}
}

Output:

Javaインスタント

The output will be the time of the system running the code.

2. getEpochSecond()

Code:

import java.time.Instant;
public class app {
public static void main(String[] args) {
Instant instant = Instant.now();
System.out.println( instant.getEpochSecond() );
}
}

Output:

Javaインスタント

3. getNano()

Code:

import java.time.Instant;
public class app {
public static void main(String[] args) {
Instant instant = Instant.now();
System.out.println( instant.getNano() );
}
}

Output:

Javaインスタント

4. plusSeconds()

Code:

import java.time.Instant;
public class app {
public static void main(String[] args) {
Instant instant = Instant.now();
System.out.println( instant );
instant = instant.plusSeconds( 3600 );
System.out.println( instant );
}
}

Output:

Javaインスタント

We have added exactly 3600 seconds, i.e. 1 hour, to the current instant, as it can be seen in the output that time is increased by 1 hour.

5. compareTo()

Code:

import java.time.Instant;
public class app {
public static void main(String[] args) {
Instant instant = Instant.now();
System.out.println( instant );
Instant instant2 = instant.plusSeconds( 3600 );
System.out.println( instant.compareTo( instant2 ) );
}
}

Output:

Javaインスタント

Here, we are comparing two instants, current with the instant having added 1 more hour. As the current instance is less than instance2, the output is negative.

Conclusion

So, we have seen the Instant class introduced from Java 8. This class represents the seconds from the start of the timeline with nanoseconds precision. This class is useful to generate the timestamp, which will represent the system time. We have seen different types of instants which we can get and different methods useful for calculations, creating a new instantly, comparing instants, getting seconds and nanoseconds differently, etc. Instant class is immutable and provides thread safety as compared to the old Date object. The Instant class is much more powerful than the old time-date API.

以上がJavaインスタントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
高度なJavaプロジェクト管理、自動化の構築、依存関係の解像度にMavenまたはGradleを使用するにはどうすればよいですか?高度なJavaプロジェクト管理、自動化の構築、依存関係の解像度にMavenまたはGradleを使用するにはどうすればよいですか?Mar 17, 2025 pm 05:46 PM

この記事では、Javaプロジェクト管理、自動化の構築、依存関係の解像度にMavenとGradleを使用して、アプローチと最適化戦略を比較して説明します。

適切なバージョン化と依存関係管理を備えたカスタムJavaライブラリ(JARファイル)を作成および使用するにはどうすればよいですか?適切なバージョン化と依存関係管理を備えたカスタムJavaライブラリ(JARファイル)を作成および使用するにはどうすればよいですか?Mar 17, 2025 pm 05:45 PM

この記事では、MavenやGradleなどのツールを使用して、適切なバージョン化と依存関係管理を使用して、カスタムJavaライブラリ(JARファイル)の作成と使用について説明します。

カフェインやグアバキャッシュなどのライブラリを使用して、Javaアプリケーションにマルチレベルキャッシュを実装するにはどうすればよいですか?カフェインやグアバキャッシュなどのライブラリを使用して、Javaアプリケーションにマルチレベルキャッシュを実装するにはどうすればよいですか?Mar 17, 2025 pm 05:44 PM

この記事では、カフェインとグアバキャッシュを使用してJavaでマルチレベルキャッシュを実装してアプリケーションのパフォーマンスを向上させています。セットアップ、統合、パフォーマンスの利点をカバーし、構成と立ち退きポリシー管理Best Pra

キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPA(Java Persistence API)を使用するにはどうすればよいですか?キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPA(Java Persistence API)を使用するにはどうすればよいですか?Mar 17, 2025 pm 05:43 PM

この記事では、キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPAを使用することについて説明します。潜在的な落とし穴を強調しながら、パフォーマンスを最適化するためのセットアップ、エンティティマッピング、およびベストプラクティスをカバーしています。[159文字]

Javaのクラスロードメカニズムは、さまざまなクラスローダーやその委任モデルを含むどのように機能しますか?Javaのクラスロードメカニズムは、さまざまなクラスローダーやその委任モデルを含むどのように機能しますか?Mar 17, 2025 pm 05:35 PM

Javaのクラスロードには、ブートストラップ、拡張機能、およびアプリケーションクラスローダーを備えた階層システムを使用して、クラスの読み込み、リンク、および初期化が含まれます。親の委任モデルは、コアクラスが最初にロードされ、カスタムクラスのLOAに影響を与えることを保証します

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境