Javaの戻り値の型は何ですか?それらはどのように使用されますか?


ベストアンサー

  • 加算を行う場合、戻り値の型はになります。 int
  • ユーザーの名前を返したい場合、戻り値の型は文字列になります。
  • データを含む配列のリストを返したい場合は、配列リストになります。
  • 必要な場合接続が成功したかどうかを返し、ブール値

例1:

//戻り値の型int

public function int doSomething(){

int a = 5;

int b = 4;

int c = a * b;

return c; // int //

}

と入力します例2:

//戻り値の型String

public function String doSomething(){

String a =“ First NAme”;

文字列b =“最後の名前”;

文字列c = a + b; //連結

return c; // 文字列 // O / P =>名姓

}

例3:

//戻り型ArrayList

public function ArrayList doSomething(){

ArrayList list = new ArrayList ();

String a =“ First NAme”;

String b =“ LAST NAme”;

list.add(a);

list.add(b);

リターンリスト; //タイプ ArrayList // O / P => [名姓]

}

戻り値の型ユーザー定義のクラスオブジェクトであっても、任意のタイプにすることができます。例:objStudentを返す; (戻り値の型がクラスStudentであり、objStudentがそのクラスのオブジェクトである場合。

回答

「回答した他の人は私より経験豊富ですが、試してみます」質問に答えるために。

Javaには2つのタイプの変数とメソッドがあります— プリミティブ型と参照型。ただし、メソッドには参照のプリミティブの戻り値の型、またはvoid 。これらのいずれかを含めないと、コードはコンパイルされません。

[注:ここではコンストラクターについては説明していません。個人的には、コンストラクターを「特別なメソッド」と呼ぶことを好みません。一部のプログラマーは、メソッドという用語をコンストラクターを含めます。私が間違っていない場合は、コンストラクターを「特別なメソッド」と呼んでいるOracleJavaのドキュメントを思い出します。]

プリミティブ型

これが8つの大文字と小文字を区別するプリミティブ型です:byte、short、int、long、float、double、char、boolean。[Stringプリミティブ型ではありません。 it “sa reference type。]メソッドは、次のコードsnipitのように、これらの1つを返すか、これらのいずれも返さない(void)ことができます。

balance = getAccountBalance();

/* Method getAccountBalance() below is going to subtract a fee of 1.50 before returning our balance. */

double getAccountBalance()

{

balance = balance - 1.50;

return balance;

}

/* The variable balance must have a type that matches double because the return type of method getAccountBalance() is double. Otherwise, we get a compile error. */

メソッドは値を返す必要はありません。型を返さないメソッドには、voidという型が必要です。メソッドの戻り値の型としてvoidを含めると、Javaは何も返されることを期待しません。戻り値を含めると(編集:5月27日) type は、コンパイル。一部のプログラマーは、メソッドの戻り値の型がvoidの場合、returnステートメント「 return; 」を配置します。このコードは準拠しています。

ここに ” ■戻り値の型がvoidのメソッドの例。 (ちなみに、 public、private、protected のような単語は、アクセス修飾子と呼ばれます。簡略化のため、これらのアクセス修飾子は意図的に省略しています。)

double balance = 275.00;

makeDeposit( 65.00 );

void makeDeposit( double deposit )

{

balance = balance + deposit;

}

/* Notice we have no return type included in the method. */

次のコードメソッドの戻り値の型がvoidのreturnステートメントがあるため、コンパイルされません

double balance = 275.00;

makeDeposit( 200.00 );

void makeDeposit( double deposit )

{

balance = balance + deposit;

return balance;

}

/* The last line "return balance" causes the code to fail to compile because the program doesn"t know what to do with the return statement. Java is expecting a return type of void, nothing. The code is returning balance, a double type. */

参照タイプ

参照型は他のすべての型ですidesvoidと8つのプリミティブ型。これらの型はオブジェクトです。arrays、Integer、BigInteger、String、ArrayList、List、Map 、AnyValidUserDefinedTypeは、参照型のほんの一部です。

で参照型を返します。以下のコード。参照型(プリミティブ型ではない)は、戻り値 nullを持つことができます。

int[] values = { -4, 16, -36, 0 };

values = sortArray( values );

int[] sortArray( int[] inputArray )

{

/* code to sort values */

return inputArray;

}

/* The program returns the sorted array. */

上記のコードでは、inputArrayというint []を返しました。 inputArrayの型は、メソッドsortArray()の参照型と一致します。

次のコードでは、 null を返すことを選択しました。メソッドがString型を予期していたとしても、参照型。 文字列はクラスであり、参照型であり、int、double、booleanなどのプリミティブ型ではないことを思い出してください。

/* We want to return the name only if it is short, 3 characters or fewer to be exact. */

String firstName = "Ahmad";

System.out.println("Short Name = " + shortName );

String getShortNames( String name )

{

if ( name.length() > 3 )

{

return null;

}

else

{

return name;

}

}

/* Output: null */

上記のコードで、名前の長さが3未満の場合、メソッドgetShortNames()は名前の値を返します。ただし、この場合、名前は5文字の長さであるため、値nullが返されます。 5行目は nullを出力します。

前述したように、ユーザー定義クラスから型を返すこともできます。 String、Integer、BigDecimal、Map などのJavaのライブラリで定義されているクラスに限定されません。

覚えておくべき主なポイント:

  • メソッドの3つの戻り値の型。プリミティブ型、参照型、またはvoidのいずれかを使用する必要があります
  • メソッドにプリミティブおよび参照の戻り値の型を使用する場合、returnステートメントをメソッドコードブロック(中括弧{})に含める必要があります。それ以外の場合は、コンパイルエラーが発生する可能性があります。
  • メソッドの戻り値の型としてvoidを使用する場合、returnステートメントをメソッドのコードブロックに含めることはできません 。そうしないと、コードはコンパイルされません。
  • 参照の戻り値の型を持つメソッドには、正確な参照型の変数を返すか、 null 。プリミティブな戻り値の型が必要な場合、nullを戻り値の型として使用することはできません。もちろん、メソッドの戻り値の型がvoidであるため、nullを使用することはできません。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です