プロが教える店舗&オフィスのセキュリティ対策術

javaの経験なんてまだ2ヶ月もたっていないので配列内を検索をしようにも想像がつかないです
とりあえず作りかけソースコードを載せます↓
import java.util.*;
class StudentList {
public static void main(String[] args){
int ID[]={23,45,78,51,9};
String name[]={"荒川","神田","吉田","渡辺","木村"};
Scanner sc=new Scanner(System.in);
System.out.print("学生番号を入力してください>");
int key =Integer.parseInt(sc.next());
}
}
お優しいかたアドバイスをお願いします

A 回答 (3件)

>いま考えているのはintのIDに入っている"23"とString型のnameに入っている"荒川"をどうにかして比較して


ご自身でもおっしゃっているように、この二つを比較はできないですよね。
ID配列とname配列のそれぞれの順番は全然関係ないのでしょうか。
IDとnameが配列の順番で紐づくならば、
入力された学生番号のID配列でのインデックスを取得して、
name配列から該当インデックスの値を取得すればいいのではないでしょうか。
ID配列のインデックスはループでひとつずつ値を比較していけばわかりますよね。

No.2さんの回答にあるMapを使ったり、クラスを作成したりすると
こういったことを簡単に処理できるようになったりします。
    • good
    • 0
この回答へのお礼

再度ありがとうございます
わかりました
とりあえずループなら書いて勉強しているのでそこらへんを考えて当たってみますね

お礼日時:2010/12/22 21:06

簡単よ。


forループで先頭から順に探していくのよ。

ちなみに今回のようなケースの場合
配列ではなく、HashMapを使うと簡単に名前が得られるわ。
    • good
    • 0
この回答へのお礼

ごめんなさいHashMapの言葉すら初めて聞いたことのないレベルですんでHashMapは外します
まずHashMapってなに?感じです
ループ文なら勉強中ですんでなんとかわかります
とりあえずforループから考えて作ります

お礼日時:2010/12/22 21:14

じゃあアドバイスだけ:


「配列内を検索」といわれたときに, 「自分ならどうするか」をきちんと言葉で書けますか?

プログラミングは魔法じゃないので, 「自分ならどのように処理するのか」を認識せずに書くのはなかなか大変だと思いますよ.
    • good
    • 0
この回答へのお礼

回答ありがとうございます
そりゃプログラムは言われた事しかしないですよね。いま考えているのはintのIDに入っている"23"とString型のnameに入っている"荒川"をどうにかして比較して一致して出力すれば良いと考えています
けどint型とStringでは無理ですよね?
今のところそこしか思いつかなくてだからどう作ったら良いのかわからないです

お礼日時:2010/12/22 12:18

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!