シナリオ: 1 日分の漁獲記録を含む ASCII テキスト ファイルが提供されました。ファイルの各行には、次の 3 つのフィールドを持つ「コロンで区切られた」キャッチ レコードが 1 つあります。
CONTESTANTS_NAME:FISH_TYPE:FISH_WEIGHT
例えば
PETER:TUNNY:13.3
これは PETER という競技者が 13.3 kg の TUNNY をキャッチしたことを示しています。ピーターは、その日に複数の魚を釣った可能性があることに注意してください。
Java の組み込みクラス Tokenizer と HashMap を使用して、この問題をどのように解決しますか?
設計では、次の分析が提供される必要があります。
- その日に釣れた魚種ごとの総重量。
- 各競技者が釣った魚の総重量。
- 総漁獲重量でランク付けされた上位 3 つの競合他社。
これを投稿する理由は、マップにはキーと値のペアだけが含まれていることを知ってパニックに陥り、3 つのフィールドがあるため、これを解決する方法がわからなかったからです。私がやったことは、2 つの HashMap を用意することです。最初の 1 つは CONTESTANT-NAME のキーを持ち、2 番目のキーは FISH_NAME で、必要な分析を提供できました。これには多くのループが必要で、それがプログラミングの良い方法であるかどうかはわかりません. 誰かがより良いアプローチを持っている場合は、私に知らせてください。ロジックが必要なだけです。