"マシン"(すべてのタイプ)のアレイリストに対して "ジョブ"の配列リストをチェックしようとしているところです。ジョブの最初の3文字がマシンの最初の3文字と一致するとPRTジョブコードはコードPRTのマシンにのみ割り当てることができます)。私はそれが仕事を受け入れるようにしたいが、もしそうでなければ、利用可能な機械がないというメッセージを印刷したい。私は取得しています問題は、それはなりますので、それがループを周回するたびにメッセージをプリントアウトしていることである結果を繰り返さずに2つのforループを検索します。
public void assignJob() {
for(Job j : jobs) {
String jobCode = j.getCode().substring(0, 3);
for(Machine m : machines) {
String machineCode = m.getCode().substring(0,3);
if (jobCode.equals(machineCode)){
m.acceptJob(j);
System.out.println("The job " + j.getCode() + " has been
assigned to a machine.");
break;
}
else {
System.out.println("Sorry there is no machine available to accept the type of job: " + j.getCode());
}
}
}
}
:私はだけなので、これが最善の方法ではないかもしれない数週間のカップルのためのJavaを勉強されています4回目に正しいマシンを見つけてから、そのジョブが受け入れられたと言う前に、3回利用可能なマシンはありません。私は本当にメッセージを1回だけ必要とし、それは検索して何も見つけていない。
ご協力いただければ幸いです。