Android
 Computer >> コンピューター >  >> プログラミング >> Android

Kotlinのconstとvalの違いは何ですか?


constキーワード

定数 キーワードは、変数値が constのままである場合は常にKotlinで使用されます アプリケーションのライフサイクル全体。これは、 const を意味します クラスの不変プロパティにのみ適用されます。簡単に言うと、 constを使用します クラスの読み取り専用プロパティを宣言します。

constに適用されるいくつかの制約があります 変数。それらは次のとおりです-

  • const クラスの不変プロパティにのみ適用できます。

  • 関数やクラスコンストラクターに割り当てることはできません。プリミティブデータ型または文字列を割り当てる必要があります。

  • 定数 変数はコンパイル時に初期化されます。

次の例では、 constを宣言します 変数であり、アプリケーションで同じ変数を使用します。

const val sName = "tutorialspoint";
// This line will throw an error as we cannot
// use Const with any function call.
// const val myFun = MyFunc();

fun main() {
   println("Example of Const-Val--->"+sName);
}

出力

次の出力が得られます-

Example of Const-Val--->tutorialspoint

Valキーワード

Kotlinでは、 val 変数の宣言にも使用されます。両方の"val" および"constval" クラスの読み取り専用プロパティを宣言するために使用されます。 constとして宣言された変数 実行時に初期化されます。

  • val クラスの不変プロパティを扱います。つまり、 valを使用して宣言できるのは読み取り専用変数のみです。 。

  • val 実行時に初期化されます。

  • valの場合 、コンテンツはミュートできますが、 const val の場合 、コンテンツをミュートすることはできません。

val を使用して関数を渡すために、前の例を変更します 実行時にエラーが発生することはありません。

const val sName = "tutorialspoint";

// We can pass function using val
val myfun=MyFunc();

fun main() {
   println("Example of Const-Val--->"+sName);
   println("Example of Val--->"+myfun);
}

fun MyFunc(): String {
   return "Hello Kotlin"
}

出力

コードを実行すると、次の出力が生成されます-

Example of Const-Val--->tutorialspoint
Example of Val--->Hello Kotlin

  1. DirectX11とDirectX12の違いは何ですか?

    DirectXは、マルチメディアコンテンツをレンダリングし、グラフィカルハードウェアと通信するためにソフトウェアによって使用されるAPIまたはアプリケーションプログラミングインターフェイスのコレクションです。 DirectXの主要コンポーネントAPIであるDirect3Dは、ソフトウェアとグラフィックスハードウェア間の通信を処理します。すべてのハードウェアが異なるため、関数と呼び出しの標準化されたライブラリを使用してグラフィックカードと通信すると、ゲーム開発がスピードアップします。これはハードウェアアブストラクションと呼ばれ、APIの主な仕事です。 車について考えてみましょう。1台の車を運転

  2. const int *、const int * const、およびint const *の違いは何ですか?

    ここでは、整数ポインター、整数定数、および整数定数ポインターに基づくいくつかの異なるタイプの変数宣言を確認します。 それらを決定するために、時計回り/スパイラルルールを使用します。用語を話し合うことで、ルールも理解できます。 const int * 。これは、これがポインター型変数であることをコンパイラーに通知するために使用され、定数intのアドレスを格納できます。時計のルールはこのように言っています- もう1つはconstint*constです。これは、これが1つの定数ポインター変数であり、別の定数整数のアドレスを格納できることを示すために使用されます。時計のルールを適用する