import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
public class ShopManager {
private Map<String,SubShop> subShopMap;
private Double price;
class SubShop{
private String shopName;
private Double ratio;
public SubShop(String name,Double ratio){
this.shopName = name;
this.ratio = ratio;
}
public String getShopName() {
return shopName;
}
public void setShopName(String shopName) {
this.shopName = shopName;
}
public Double getRatio() {
return ratio;
}
public void setRatio(Double ratio) {
this.ratio = ratio;
}
}
public Double getPrice() {
return price;
}
public void setPrice(Double price) {
this.price = price;
}
public void setNewSubShop(String name,Double ratio){
if(this.subShopMap == null){
this.subShopMap = new HashMap<String,SubShop>();
}
if(subShopMap.containsKey(name)){
SubShop sub = (SubShop)subShopMap.get(name);
System.out.println("已经存在同名的分店!["+sub.getShopName()+","+sub.getRatio()*this.price+"]");
}else{
SubShop sub = new SubShop(name,ratio);
subShopMap.put(name, sub);
}
}
@SuppressWarnings("unchecked")
public void showAllSubShop(){
for(Iterator it=subShopMap.keySet().iterator();it.hasNext();){
String key = (String)it.next();
showSubShopByName(key);
}
}
public void showSubShopByName(String name){
SubShop sub = (SubShop)subShopMap.get(name);
System.out.println("Name:"+sub.getShopName()+",Price:"+sub.getRatio()*this.price);
}
public static void main(String[] args){
ShopManager sm = new ShopManager(); //创建总店
sm.setPrice(110.0); //设置价格
sm.setNewSubShop("no1", 1.1); //加入分店1
sm.setNewSubShop("no3", 1.3); //加入分店2
sm.setNewSubShop("no2", 1.2); //加入分店3
sm.setNewSubShop("no2", 1.2); //加入分店3
sm.setNewSubShop("no4", 1.4); //加入分店4
sm.showAllSubShop(); //显示所有分店的价格
sm.setPrice(120.0); //重新设置价格
sm.showAllSubShop(); //显示所有分店的价格
sm.showSubShopByName("no1"); //显示指定分店的价格
}
}
追问import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
能不能不用这个来实现