- PR -

メソッドの戻り値について

1
投票結果総投票数:7
Java 7 100.00%
  • 投票は恣意的に行われます。統計的な調査と異なり、投票データの正確性や標本の代表性は保証されません。
  • 投票結果の正当性や公平性について、@ITは一切保証も関与もいたしません。
投稿者投稿内容
初芽
会議室デビュー日: 2005/07/03
投稿数: 15
投稿日時: 2005-07-03 00:45
メソッドの戻り値が1つしか返せませんが、2つ以上返したいときはどうしたらよいのでしょうか?
例えば緯度と経度を一度に代入するメソッドを作成したとします。
それぞれ、呼び出し元に戻して使いたい場合はどうすればよいのでしょうか?
どうすればよいのかわからず、困っております
質問があいまいな表現のような気がしますが、よろしくお願いいたします。
ぽん
大ベテラン
会議室デビュー日: 2003/05/13
投稿数: 157
投稿日時: 2005-07-03 00:57
緯度と経度を持っているクラスを作り、それを返しましょう。

コード:

public class Sample {
public Coordinates func() {
return new Coordinates(123456,123456);
}
}
public class Coordinates {
private final int latitude;
private final int longitude;

public Coordinates(final int latitude,final int longitude) {
this.latitude = latitude;
this.longitude = longitude;
}

public int getLatitude() {
return latitude;
}

public int getLongitude() {
return longitude;
}
}



[ メッセージ編集済み 編集者: ぽん 編集日時 2005-07-03 00:58 ]
初芽
会議室デビュー日: 2005/07/03
投稿数: 15
投稿日時: 2005-07-03 01:11
ぽんさん、レスありがとうございます!
書いていただいたコードをじっくり読み、考えさせていただきます。
早いレスで、本当にありがとうございました。
初芽
会議室デビュー日: 2005/07/03
投稿数: 15
投稿日時: 2005-07-03 01:45
度々すみません
以下の解釈でよいのでしょうか?
SampleクラスのfuncメソッドはCoordinatesクラスをインスタンス化している。
インスタンス化したアドレスを戻り地として持つ?
getLatitudeメソッドとgetLongitudeメソッドは呼ばれていないのでしょうか?
戻り値を表示させると、
Coordinates@addbf1
となっていたのですが、2つの引数を返すにはそれぞれのgetメソッドを呼ばなければならないのでしょうか。

初歩的な質問ですみませんが、どなたか返答いただけると幸いです。
るぱん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 1370
投稿日時: 2005-07-03 02:07
引用:

初芽さんの書き込み (2005-07-03 01:45) より:
2つの引数を返すにはそれぞれのgetメソッドを呼ばなければならないのでしょうか。

初歩的な質問ですみませんが、どなたか返答いただけると幸いです。


that's right.
権兵衛
ベテラン
会議室デビュー日: 2002/09/24
投稿数: 50
投稿日時: 2005-07-03 16:03
引用:

初芽さんの書き込み (2005-07-03 01:45) より:
度々すみません
以下の解釈でよいのでしょうか?
SampleクラスのfuncメソッドはCoordinatesクラスをインスタンス化している。
インスタンス化したアドレスを戻り地として持つ?
getLatitudeメソッドとgetLongitudeメソッドは呼ばれていないのでしょうか?
戻り値を表示させると、
Coordinates@addbf1
となっていたのですが、2つの引数を返すにはそれぞれのgetメソッドを呼ばなければならないのでしょうか。

初歩的な質問ですみませんが、どなたか返答いただけると幸いです。


表示で両方を出したいだけなら toString を実装してもよろし
1

スキルアップ/キャリアアップ(JOB@IT)