こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

Java メソッド、クラスの利用方法について。。

【java初心者です。。】
あるメソッドA(引数1、引数2、引数3)
と入れると

○○(□□□)の設置台数は△台です。というのを一撃で表示したいのですが、少しわからなくて

今現在、このようになってまして。。。
class sss{
public static void main(String args[]){
getSlot();
}


private static void slot(String name,String maker,int daisuu){
System.out.println(name+"("+maker+")の設置台数は"+daisuu+"台です");
}

private static void getSlot(){
String[] sn = {"緑ドン","秘宝伝","エヴァ"};
String[] sm = {"アルゼ","大都技研","ビスティ"};
int[] sc = {10,5,12};
for(int num =0;num<3;num++){
slot(sn[num],sm[num],sc[num]);
}
}
}
実行結果:
緑ドン(アルゼ)の設置台数は10台です
秘法伝(大都技研)の設置台数は5台です
エヴァ(ビスティ)の設置台数は12台です
にはなるんですが

たとえばmainのところの
getSlot();を

getSlot(1,1,1);
といれたら "緑ドン(アルゼ)の設置台数は10台です" と出るように
少しスマートに利用したいんですね。
メソッドの使い方になれたくて自分で好きなようにやってるんですが

いまの感じだと、本来のメソッドの使い方と逆?のような気がして..

スロット名(メーカ名)、台数を配列にして
表示する部分までメソッドAで作って

mainクラスで メソッドA(数字、数字、数字)と入力すると
配列の内容を別々に呼び出して表示する、というところまで行きたいのですが、何か良い方法はございませんか?
ほんにしょうもない質問ですみません。。。

最終はA(1,1,1),A(2,2,2)・・・forを使って
といれて結果まとめてでるような感じにしたいのです。

むしろ、そういう風にしない方がいいのかもしれませんが。。。
ご鞭撻お願いできませんでしょうか。

投稿日時 - 2011-04-29 23:38:54

QNo.6703192

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

あえていえばこんなメソッドを作ること自体が本手じゃない.
「機種とメーカ, 台数からなるクラス」を作って, そこに「表示する」というインスタンスメソッドを作るのが本来じゃないかな.

投稿日時 - 2011-04-30 22:48:12

ANo.1

<回答>
多分、こういう風に使いたいという事なんですよね?

http://ideone.com/db28q

各部の名称等は極力変え無いようにしました。

<おまけ>
外部から配列のインデックスを指定する時、何番に何があるか把握している必要がありますよね?
この使い方が大変だなーと思うようであれば、ちょこちょこクラスやメソッドの配置を変えてみて、丁度良いところを探すようにしてみて下さい。
簡単なところで、台数だけでも引数で直接指定するとか、そもそも全部の値を引数で直接受け取るとかどうでしょう

投稿日時 - 2011-04-30 02:39:54

お礼

ありがとうございます!!!むちゃくちゃわかりやすかったです!!!!!。
本当に時間頂いてありがとうございます。

引数の型をintにしたら
Stringを入れられないと思っていました

String sn [int型 name1]という風にしたらよかったんですね。
とても勉強になりました。ありがとうございます。

投稿日時 - 2011-04-30 11:50:35

あなたにオススメの質問