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

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

関連記事

JSPのコンパイル済ファイルの格納場所(Tomcat単体の場合、Eclipse連携の場合)

<目次> (1) JSPのコンパイル済ファイルの格納場所(Tomcat単体の場合、Eclipse連携の場合)  (1-1) Tomcatを単体で使用している場合  (1-2) Eclipseとアプリケ …

WindowsのcmdからJavaファイルを作成・コンパイル・実行する方法

“Windows”の「コマンドプロンプト」からJavaファイルを作成・コンパイル・実行する方法について記述します。今回の操作は全てコマンドラインインターフェイスから実施いたしま …

TomcatでEclipseを使う際にserver.xmlを編集しても上書きされる事象の対処方法

<目次> (1) TomcatでEclipseを使う際にserver.xmlを編集しても上書きされる事象の対処方法  (1-1) 発生状況・エラーメッセージ  (1-2) 原因  (1-3) 対処法 …

Javaの継承やオーバーライドとは?特徴の解説とサンプルプログラムの紹介

(0)目次&概説 (1) 継承/Inherit  (1-1) 継承とは?  (1-2) 継承の特徴  (1-3) 継承のサンプルコード   (1-3-1) Carクラス   (1-3-2) Truck …

JVMの基本アーキテクチャと各サブシステム等の概要説明について

(0)目次&概説 (1) 記事の目的 (2) Javaのアーキテクチャ概要・概観 (3) JVMのアーキテクチャ概要  (3-1) JVMの概観  (3-2) JVMの主要サブシステム1:Class …

  • English (United States)
  • 日本語
Top