π Chapter 8: κ²½κ³
π μΈλΆ μ½λ μ¬μ©νκΈ°β
ν¨ν€μ§ μ 곡μλ νλ μμν¬ μ 곡μλ μ μ©μ±μ μ΅λν λνλ € μ μ΄λ€. λ λ§μ νκ²½μμ λμκ°μΌ λ λ§μ κ³ κ°μ΄ ꡬ맀νλκΉ. λ°λ©΄, μ¬μ©μλ μμ μ μꡬμ μ§μ€νλ μΈν°νμ΄μ€λ₯Ό λ°λλ€. μ΄λ° κΈ΄μ₯μΌλ‘ μΈν΄ μμ€ν κ²½κ³μμ λ¬Έμ κ° μκΈΈ μμ§κ° λ§λ€.
ν μλ‘, java.util.Map
μ μ΄ν΄λ³΄μ. Map
μ κ΅μ₯ν λ€μν μΈν°νμ΄μ€λ‘ μλ§μ κΈ°λ₯μ μ 곡νλ€. Map
μ΄ μ 곡νλ κΈ°λ₯μ±κ³Ό μ μ°μ±μ νμ€ν μ μ©νμ§λ§ κ·Έλ§νΌ μνλ ν¬λ€.
Map sensors = new HashMap();
Sensor
κ°μ²΄κ° νμν μ½λλ λ€μκ³Ό κ°μ΄ Sensor
κ°μ²΄λ₯Ό κ°μ Έμ¨λ€.
Sensor s = (Sensor)sensors.get(sensorId);
μμ κ°μ μ½λκ° ν λ²μ΄ μλλΌ μ¬λ¬ μ°¨λ‘ λμ¨λ€. μ¦, Map
μ΄ λ°ννλ Object
λ₯Ό μ¬λ°λ₯Έ μ νμΌλ‘ λ³νν μ±
μμ Map
μ μ¬μ©νλ ν΄λΌμ΄μΈνΈμ μλ€. κ·Έλλ μ½λλ λμνλ€. νμ§λ§ κΉ¨λν μ½λλΌ λ³΄κΈ°λ μ΄λ ΅λ€. κ²λ€κ° μμ κ°μ μ½λλ μλλ λΆλͺ
ν λλ¬λμ§ μλλ€. λμ λ€μκ³Ό κ°μ΄ μ λ€λ¦μ€λ₯Ό μ¬μ©νλ©΄ μ½λ κ°λ
μ±μ΄ ν¬κ² λμμ§λ€.
Map<String, Sensor> sensors = new HashMap<Sensor>();
// ...
Sensor s = sensors.get(sensorId);
κ·Έλ μ§λ§ μ λ°©λ²λ Map<String, Sensor>
κ° μ¬μ©μμκ² νμνμ§ μμ κΈ°λ₯κΉμ§ μ 곡νλ€λ λ¬Έμ λ ν΄κ²°νμ§ λͺ»νλ€.
λ€μμ Map
μ μ’ λ κΉλνκ² μ¬μ©ν μ½λλ€. Sensors
μ¬μ©μλ μ λ€λ¦μ€κ° μ¬μ©λμλμ§ μ¬λΆμ μ κ²½ μΈ νμκ° μλ€. μλμμ 보λ―, μ λ€λ¦μ€μ μ¬μ© μ¬λΆλ Sensors
μμμ κ²°μ νλ€.
public class Sensors {
private Map sensors = new HashMap();
public Sensor getById(String id) {
return (Sensor) sensors.get(id);
}
// μ΄ν μλ΅
}