Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

Java

Javaのメソッドで複数の戻り値を返却する方法

投稿日:2021年5月26日 更新日:

<目次>

(1) Javaのメソッドで複数の戻り値を返却する方法
 (1-1) 同じ型の値を複数返却したい場合 ⇒ 配列やList
  ◎ポイント
  ◎サンプル
 (1-2) 異なる型の関連する値を複数返却したい場合 ⇒ インスタンス
  ◎ポイント
  ◎サンプル

(1) Javaのメソッドで複数の戻り値を返却する方法

(1-1) 同じ型の値を複数返却したい場合 ⇒ 配列やList

同じ型の値を複数返却したい場合、例えば名簿の名前一覧(String型)などのリストを返却したいケースなどは「配列」や「List」を返却するのが手軽で便利です。

◎ポイント

メソッドの戻り値が、intやbooleanといった基本データ型ではなく、配列やList(例ではArrayList)になっているのがポイントです。

目次にもどる

◎サンプル

ArrayListはX座標、Y座標、Z座標の情報を持っており、それをreturnで一気に返却しています。

import java.util.ArrayList;
public class IT0xxx_ReturnMultipleValues {
    public static void main(String args[]) {
        //(1)の実行・結果取得
        ArrayList<Double> zahyou = getCoordinate(1.0,4.0,2.0);
        System.out.println("# (1) : "+zahyou);
    }

    //# (1)同じ型の値を複数返却したい場合 → 配列やArray
    //#  →(例)XYZ座標を表す情報を返却
    static ArrayList<Double> getCoordinate(double x,double y,double z) {

        //# X,Y,Z座標を1つのArrayListに入れて返却
        ArrayList<Double> coordinate = new ArrayList<Double>();
        coordinate.add(x);
        coordinate.add(y);
        coordinate.add(z);
        return coordinate;
    }

(図111)

目次にもどる

(1-2) 異なる型の関連する値を複数返却したい場合 ⇒ インスタンス

1つ以上の関連する値(異なる型も可)を返却する場合は、それらをクラスの「メンバ変数」として一纏めにして返却するのが手軽で便利です。

◎ポイント

メソッドの戻り値が、intやbooleanといった基本データ型ではなく、独自で定義したクラス型(例:Fruits2)のインスタンスになっているのがポイントです。

static Fruits2 getFruits(・・中略・・){
 Fruits2 fruits = new Fruits2(・・中略・・)
 //中略
 Return fruits;
}

目次にもどる

◎サンプル

Fruitsクラスは「名前」「価格」「原産地」の情報を持っており、それをreturnで一気に返却しています。

public class IT0xxx_ReturnMultipleValues2 {
    public static void main(String args[]) {

        //(2)の実行・結果取得
        Fruits2 fr = getFruits("りんご",200,"青森");
        System.out.println("# (2) : "+fr.toString());
    }

    //# (2)異なる型の関連する値を複数返却したい場合 → インスタンス
    //#  →(例)フルーツを表す「Fruits」クラスのインスタンスを返却
    static Fruits2 getFruits(String name,int price,String madein) {

        //# フルーツ名前、価格、原産地を1つのインスタンスに入れて返却
        Fruits2 fruits = new Fruits2(name,price,madein);
        return fruits;
    }
}

(図121)

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-Java

執筆者:


comment

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

関連記事

Javaのsynchronizedとは?ある場合とない場合のサンプルPGを比較付き

<目次> (1) Javaのsynchronizedとは?ある場合とない場合のサンプルPGを比較付き  (1-1) synchronizedの概要  (1-2) synchronizedの構文  (1 …

サーブレットとは?その役割やHelloWorldサンプルコードのご紹介

(0)目次&概説 (1) サーブレットの基本  (1-1) サーブレットとは?  (1-2) サーブレットの前身技術との比較  (1-3) サーブレットとJSPの違い  (1-4) サーブレットのHe …

JavaScriptのMapとは?基本的な使い方やサンプルプログラムをご紹介

<目次> (1) JavaScriptのMapとは?基本的な使い方やサンプルプログラムをご紹介  (1-1) 概要・構文  (1-2) サンプルプログラム   ●JavaScriptのサンプル   ● …

Javaのprintfで日付の書式設定を行う方法

<目次> (1) Javaのprintfで日付の書式設定を行う方法  (1-1) printfの基本構文  (1-2) 時刻に関するフォーマット  (1-3) 日付に関するフォーマット (1) Jav …

TwitterのAPIライブラリでリツイートした人の一覧を取得する方法

<目次> (1) TwitterのAPIライブラリでリツイートした人の一覧を取得する方法  (1-1) 構文  (1-2) サンプルプログラム (1) TwitterのAPIライブラリでリツイートした …

  • English (United States)
  • 日本語
Top