- 初芽
- 会議室デビュー日: 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 を実装してもよろし
|