以下是代码:
class thingsToRent
{
private static HashMap thingsToRent = new HashMap();
static
{
thingsToRent.put("V-1", new String( "Zumba workout video" ) );
thingsToRent.put("V-2", new String( "Pumping Iron video" ) );
}
public static String get( String serialEntered )
{
这是我需要退回租赁字符串的地方,如Zumba锻炼或Pumping Iron,
我怎么说我的位置?
return ?;
我已经尝试过返回serialEntered,但这只是给了我V-1或V-2,我
使用扫描仪进入控制台
}
}
class Video extends Thing
{
public Video( String serialEntered )
{
super( serialEntered );
}
public void getDescription( String serialEntered )
{
String theRentalFound = (String)thingsToRent.get( serialEntered );
if ( theRentalFound == null )
{
throw new IllegalArgumentException("Serial Number not found (" + serialEntered + ")");
}
else
{
System.out.println( "Video: " + theRentalFound );
}
}
}
答案 0 :(得分:1)
return thingsToRent.get(serialEntered);
将达到目的,但您不需要,因为您已经在代码中实现了这一目标。
答案 1 :(得分:1)
首先始终编写接口代码。将private static HashMap thingsToRent = new HashMap();
更改为private static Map thingsToRent = new HashMap();
您的命名约定也很混乱,将类名更改为RentalItems
,将get方法更改为getRentableItem
在该方法中,您需要使用提供的密钥访问地图:
public static String getRentableItem( String serialEntered )
{
return thingsToRent.get(serialEntered);
}
注意,你需要添加一个coode来处理如果项目不存在会发生什么 - 我会留给你o决定做什么。