ホームページ > テクノロジー周辺機器 > IT業界 > Java変数とデータ型の理解

Java変数とデータ型の理解

Jennifer Aniston
リリース: 2025-02-18 12:07:08
オリジナル
666 人が閲覧しました

Understanding Java Variables and Data Types

コアポイント

  • Java変数は、後で使用するために単一のデータポイントまたは情報を保存するために使用されます。保存するには、タイプ、名前、および何らかのデータが必要です。 Javaで最も広く使用されているデータ型は、Javaの文字列クラスで表される文字文字列です。
  • Javaの変数は、プログラムの存続期間中に変化する可能性のあるデータを保持できます。各Java変数には、文字列変数があります。宣言時に変数の値が不明な場合、Javaは適切なデフォルト値を暗黙的に提供できます。
  • Javaは、さまざまなタイプのデータを表すために異なるデータ型を提供します。たとえば、INTデータ型は整数値を表し、ブール値はtrueまたはfalseのみであり、二重は浮動小数点数を表します。これらは、Javaが提供する8つの基本データ型のいくつかです。
  • Javaでは、カスタムデータ型またはクラスを作成できます。クラスは、作成するインスタンスから表示できるプロパティと動作を定義します。クラスのインスタンスには、さまざまなデータ型の変数に保存されているそれ自体に関する情報があります。クラスの静的変数は、そのクラスのインスタンスではなく、クラスに属します。
Java変数により、プログラマーは個々のデータポイントと情報フラグメントを後で使用するために保存できます。効率を改善するために、Java変数にはタイプがあります。これらのタイプは、便利さと予測可能性のためにさまざまな種類のデータを個別に保存できるため、データ型と呼ばれます。より高度なトピックを学ぶ前に、JavaプログラマーはJava変数とデータ型の基本を理解する必要があります。 Java変数の仕組みを説明するために、写真共有アプリケーションを想像してみましょう。アプリは、アプリケーションステータスとユーザーが共有する写真に関する多くの情報を保存します。ユーザー数、共有された写真の数、共有コメントの総数。必要に応じてこのデータを操作してユーザーに表示するには、保存する必要があります。これがJava変数が行うことです。

java変数

変数はデータを保存でき、これらのデータはプログラムの存続期間中に変更できます。変数にはタイプ、名前があり、保持するデータを提供する必要があります。 Javaで最も広く使用されているデータ型は、Javaの文字列クラスで表される文字列です。 「SitePoint」のような文字列は、文字列クラスの単なるインスタンスです。

可変命名

に従わなければならないルールがいくつかあり、従うべきいくつかのルールがあります。 Java変数名はケースに敏感であり、無限の数の文字や数字になる可能性があります。ただし、変数名は、文字、Underscore Character_、またはDollar Sign $から開始する必要があります。 Javaに変数を作成するときは、アンダースコアキャラクターやドルサインを避けながら、変数の目的を説明する数字と完全な単語を使用する慣習に従うことが最善です。最後に、変数は、最初の単語の最初の文字が小文字であり、後続の単語が大文字であることを規定する一般的なプログラミング条約である小さなラクダ命名法を使用する必要があります。

Java変数とデータ型の理解変数を使用して

アプリケーションのメインクラスのフレームワークを作成し、文字列変数に上記の各データポイントをどのように保存するかを見てみましょう。

public class SitePointGram {
    public static void main(String[] args) {
        String nameOfApp = "SitePointGram";
        String numberOfUsers = "";
        String numberOfPhotos;
        String numberOfComments = null;
        //...
    }
}
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
では、そこで何が起こったのですか?そのJavaコードの3行目にジャンプしましょう。各行で、新しい文字列タイプ変数を作成して、アプリケーションに関する単一の情報を保存します。 Javaに変数を作成するために、最初に変数に保存されるデータのタイプ、次にラクダに名前が付けられた変数名、割り当て演算子=、最後に変数に保存されるデータを宣言することに注意してください。メインメソッドの最初の行では、保存されたデータが「SitePointGram」であるNameofApp文字列変数にアプリケーションの名前を保存します。次の行には、アプリケーションにユーザーの数を保存する文字列変数があります。空の文字列 ""を保存することに注意してください。次の2行に進むにつれて、これを覚えておいてください。各Java変数には、文字列変数のデフォルト値が「Nothing」です。宣言されたときに変数の値がわからない場合は、値を明示的に初期化し、Javaが適切なデフォルト値を暗黙的に提供できるようにすることができます。これはまさに、numberofphotos変数で行うことです。繰り返しますが、4行目では、numberofcomments文字列変数をnullに明示的に初期化しますが、必要はありません。空の文字列は実際の文字列であることを理解することが重要ですが、それは空の文字列であり、nullは変数にまだ有効なデータがないことを意味します。続けましょう。 SitePointGramは人気があり、人々はそれに群がりました。 Javaを使用して、アプリケーションの成長を表しましょう。

文字列変数を初期化した後、アプリケーションには500人のユーザー、1600の共有写真、およびこれらの写真に合計2430のコメントがあることが明らかになりました。私たちは素晴らしい仕事をしたので、Javaでデータ型を使用する方法を学ぶ時です。
public static void main(String[] args) {
    //...
    numberOfUsers = "500";
    numberOfPhotos = "1600";
    numberOfComments = "2430";
    //..
}
ログイン後にコピー
ログイン後にコピー

javaデータ型

現在、すべてのデータポイントを文字列変数に保存します。文字列は、テキストなどの文字文字列を表すのに適していますが、数値やその他の種類のデータを表現する場合(およびそのデータで操作を実行する場合)、Javaが提供するデータ型を使用したり、独自のデータ型を作成したりできます。数値データポイントをより適切に保存する方法を見てみましょう。

public class SitePointGram {
    public static void main(String[] args) {
        String nameOfApp = "SitePointGram";
        String numberOfUsers = "";
        String numberOfPhotos;
        String numberOfComments = null;
        //...
    }
}
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

元のメインメソッドとはほど遠いところに、適切なデータ型の新しい変数を含む新しいコードがあります。メインメソッド本体の最初の行では、アプリケーション名を保持する変数がより正確になりました。NAMEOFAPPの代わりにAppNameを使用します。次の行には、アプリケーションの状態を保存するブール変数があります。 BooleanはTrueまたはFalseのみである可能性があるため、妥当性を表すデータポイントを保存する場合に最適です。次の3つの変数はタイプintです。 INTデータ型は、Javaの整数値を表します。 AppNameと同じパターンに従って、numberofxの代わりにnumxを使用して数値変数に名前を付けて、読みやすいままでいる間、より正確になるようにする必要があります。 int、boolean、およびdoubleは、Javaの8つの基本データ型のうち3つです。基本的なデータ型は、クラスから構築されたオブジェクトではなく、Javaによって提供される特別な値です。文字列は文字列クラスのインスタンスであるため、プリミティブではなくオブジェクトであることを忘れないでください。数値データ型のデフォルト値は0であり、ブール値のデフォルト値はfalseです。以前のメイン方法とは異なり、変数の新しいセットは数字を適切に保存するため、予想どおりに操作できます。数値を表すタイプの変数に数値データポイントを保存することにより、数学操作を実行できます。

public static void main(String[] args) {
    //...
    numberOfUsers = "500";
    numberOfPhotos = "1600";
    numberOfComments = "2430";
    //..
}
ログイン後にコピー
ログイン後にコピー
メインメソッドの最後の変数には、二重データ型で表されるユーザーあたりの写真の平均数の浮動小数点数があります。写真の数をユーザー数で割ることにより、この値を取得します。結果が最も近い整数に丸められないように、最初の数値に1.0を掛けていることに注意してください。フロートまたはダブルとしてフローティングポイント数を保存できます。ダブル(64ビット)は、フロート(32ビット)よりも広い範囲に対応できることです。最後にすべきことは、私たちが独自のデータ型でデータをどのように表現するかを見ることです。

public static void main(String[] args) {
    String appName = "SitePointGram";
    boolean appIsAlive = true;

    int numUsers = 500;
    int numPhotos = 1600;
    int numComments = 2430;
    //...
}
ログイン後にコピー
ユーザー情報のようなユーザー情報を保持する多くの文字列を作成するのは簡単ですが、ユーザーオブジェクトを作成するためにクラスを作成するのが最善です。

カスタムJavaデータ型(クラス)

そこに、ユーザーというクラスがあります。このクラスは、作成するインスタンスから表示できるプロパティと動作を単に定義します。このクラスのプロパティは、アプリケーションのユーザーに関する情報を保持するさまざまなデータ型の変数にすぎません。ユーザークラスのインスタンスは、その識別番号からユーザー名までそれ自体に関する情報を持つことができ、オンラインステータスは、ユーザーがログインまたはログアウトするときに更新できるブール変数に保存されます。ユーザーを作成したり、ログインしたりログアウトしたりするときは、その情報をコンソールに印刷します。アプリケーションで新しいユーザーが作成されるたびに、numusers変数の値は1増加するため、アプリケーションは常にユーザーの数を知ることができます。インスタンス変数を追加することにより、このクラスにさらに情報を追加できます。次に、アプリケーションのメインメソッドに新しいデータ型ユーザーのインスタンスを作成しましょう。
public class SitePointGram {
    public static void main(String[] args) {
        String nameOfApp = "SitePointGram";
        String numberOfUsers = "";
        String numberOfPhotos;
        String numberOfComments = null;
        //...
    }
}
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
そのコードでは、メイン方法を再度変更しました。最初の2行は同じままですが、3つの新しい行があります。メソッドの3行目は新しいユーザーインスタンスまたはオブジェクトを作成し、「リンカーン」という名前の変数に保存します。次の行はアプリケーションからリンカーンをログに記録し、次の行はユーザークラスにアクセスしますpublic static numusers変数は印刷に使用されますアプリケーションのユーザーインスタンスの数。クラスの静的変数は、クラスのインスタンスではなくクラスに属しているため、ユーザーのインスタンスにnumusersにアクセスする必要はありません。

結論

それだけです!これで、独自のデータタイプまたはクラスの構築を開始するために必要なJava変数とデータ型に関するすべての知識を学びました。 GitHubリポジトリのこのチュートリアルのソースコードをチェックして、これにどのように構築できるかを確認してください。

参考文献:

Java文字列に関するOracleドキュメント
    基本的なJavaデータ型に関する
  • Oracleドキュメント
faqs(faq)

Javaのローカル変数とインスタンス変数の違いは何ですか?

Javaでは、変数はローカル変数、インスタンス変数、クラス変数に分割されます。ローカル変数は、メソッド、コンストラクター、またはブロック内で宣言され、宣言の範囲内でのみアクセスできます。デフォルト値はなく、使用前に初期化する必要があります。一方、インスタンス変数はクラスで宣言されていますが、メソッドの外側です。オブジェクト固有であり、オブジェクトが作成されるたびにメモリを取得します。ローカル変数とは異なり、インスタンス変数にはデータ型に基づいてデフォルト値があります。

Javaはタイプ変換をどのように処理しますか?

Javaは、暗黙的な変換と明示的な変換の2つの方法でタイプ変換を処理します。自動型変換とも呼ばれる暗黙の変換は、2つのタイプが互換性があり、ターゲットタイプがソースタイプよりも大きい場合に発生します。キャストとも呼ばれる明示的な変換は、あるデータ型を手動で別のデータ型に変換する場合です。これは、ターゲットタイプがソースタイプよりも小さい場合、またはタイプが互換性がない場合に必要です。

Javaの変数のデフォルト値は何ですか?

Javaでは、明示的に初期化されていない場合、インスタンス変数とクラス変数がデフォルト値に自動的に初期化されます。デフォルト値はデータ型によって異なります。たとえば、BYTE、SHORT、INT、およびLONGデフォルトは0、FLOAT、DOUBLEデフォルトは0.0、CHARデフォルトは「U0000」になり、BOOLEANデフォルトはFALSEになります。非ベースデータ型(配列やクラスなど)は、デフォルトでnullになります。

Javaの変数の「最終」キーワードの意味は何ですか?

Javaの「Final」キーワードは、一定の変数を宣言するために使用されます。つまり、割り当てられたら、その値を変更できません。基本的なデータ型、オブジェクト、およびメソッドに適用できます。たとえば、「final int x = 10;」は、xの値が常に10であり、変更できないことを意味します。

Javaは文字列変数をどのように処理しますか?

Javaでは、文字列は基本的なデータ型ではなく、特別なクラスです。文字列は不変です。つまり、作成されると、その価値を変更できません。代わりに、新しい文字列オブジェクトが作成されます。 Javaは、ヒープメモリに特別な文字列プールエリアを提供します。これは、メモリ使用量を最適化するために一意の文字列値を維持しようとします。

Javaの「==」と「equals()」の違いは何ですか?

Javaでは、 '=='は2つのオブジェクトのメモリ位置を比較するリレーショナル演算子であり、「equals」は2つのオブジェクトの内容を比較する方法です。基本的なデータ型の場合、 '=='値が等しいかどうかを確認します。しかし、オブジェクトの場合、コンテンツではなく、まったく同じメモリ位置を参照するかどうかを確認します。

Javaのタイプエンハンスメントは何ですか?

Javaのタイププロモーションは、データの損失を防ぐために、ある基本データ型を別の基本データ型に自動的に変換することです。オペランドのタイプが異なる場合、通常、式またはメソッド呼び出しで発生します。より小さなタイプは、より大きなタイプに宣伝されます。たとえば、式でintとfloatを使用している場合、intはフロートに昇格します。

Javaの変数の範囲は何ですか?

Javaの変数の範囲は、変数にアクセスできるコードの部分を指します。ローカル変数は、宣言された方法またはブロック内でのみアクセスできます。メソッドが静的でない限り、インスタンス変数はクラス内のすべてのメソッドでアクセスできます。クラス変数または静的変数は、クラス内のすべての方法でアクセスできます。また、それらが公開されている場合は、クラスの外でもアクセスできます。

静的変数とJavaの非静的変数の違いは何ですか?

Javaでは、クラス変数とも呼ばれる静的変数は、個々のオブジェクトではなくクラスに属します。それらは実行の開始時に1回のみ初期化され、クラスのすべてのオブジェクト間で同じ値を共有します。インスタンス変数とも呼ばれる非静的変数は、単一のオブジェクトに属し、各オブジェクトには変数のコピーがあります。

Javaはどのように配列を処理しますか?

Javaでは、配列は同じタイプの複数の変数を保存するオブジェクトです。それらは動的に割り当てられており、プリミティブやオブジェクトを保存できます。配列の長さは、配列を作成するときに決定され、変更できません。配列には、配列内の要素の数を返す「長さ」の属性があります。アレイ内の要素は、0から始まるインデックスからアクセスされます。

以上がJava変数とデータ型の理解の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート