Java中的新功能(映射和设置)

Java中的新功能(映射和设置),java,Java,有人能帮我检查一下我的答案吗 Public string printHouse( int area) { for(Integer eachcode : HouseMap.keySet()) { if ( HouseMap.keySet()== area) { System.out.println("House name is"+ HouseMap.get(eachcode)); } } } 声明

有人能帮我检查一下我的答案吗

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}
声明一个名为HouseMap的私有实例变量属性,该属性应包含一个包含整数键和字符串值的未排序映射

Private Map< Integer, String> HouseMap = new HashMap<Integer, String>();
Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}
d为HouseCatalogue类编写一个名为printHouse的实例方法,该类接受一个整型参数,并返回一个字符串值。此方法应打印等于整数参数的区号的值House name并返回它。否则它将返回null

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}
a仅声明变量-不要初始化它 b好的 c好的 在地图中,你可以随机访问。看看MapgetInteger。您不需要迭代条目集 private的小写字母,声明时不需要新的HashMap。通常在使用java约定时,在声明variasbles houseMap时使用camelcase,但这很好

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}
private Map<Integer, String> HouseMap;
c看起来不错

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}
d哼哼,看不出方法中的要点,它应该同时打印值并返回。。好首先,再次使用公共小写字母,用一个大号字母“类名称”字符串,然后是实现:

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}
public String printHouse(int area) {

    if (HouseMap.containsKey(area)) {
        String name = HouseMap.get(area);
        System.out.println("The house with the area code " + area + 
                           " is " + name));
        return name;
    }

    return null;
}

由于映射的键是唯一的,因此可以按如下方式简化最后一种方法:

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}
public static void printHouse( int area)
{
    String name = houseMap.get(area); // May return null
    System.out.println("House name is " + name);
    return name;
}
public和private必须处处用小写的p书写

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}
您应该显示整个构造函数,而不仅仅是其中的代码

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}
修正你的缩进。对每个级别使用相同数量的缩进,并确保所有内容整齐排列

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}
当您对整数eachcode:HouseMap.keySet使用foreach循环时,迭代变量是eachcode。这是您应该与面积进行比较的值,因为这是整数。您不想将提供的区号与作为一个单元的所有区号进行比较,这些区号不是同一类型的东西;您希望依次将其与每个区号进行比较

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}
但你根本不想写那个循环。HashMap的目的是让您在给定键的情况下查找值。这就是我要做的。你有钥匙:这是一个区域。所以,您只需查找:System.out.printlnHouse名称为+HouseMap.getarea

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}
您还需要返回您查找的名称,而不仅仅是打印它,并且需要在打印之前检查名称是否在那里。包含

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}
看起来好像有人评论了你的代码,说你也忘了返回它。你有没有试着和这个人交谈,或者阅读评论

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}

只是最后一个提示:

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}
d编写一个名为

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}

实例方法不是静态方法,您必须删除第二个d方法中的static关键字…

非常感谢大家

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}
公共静态字符串printHouseint 代码{

Public string printHouse( int area)
{
    for(Integer eachcode : HouseMap.keySet()) 
    { 
        if ( HouseMap.keySet()== area)
        {
            System.out.println("House name is"+ HouseMap.get(eachcode));
        }
    }
}
if (houseMap.containsKey(code)) 
{ 
    String name = houseMap.get(coe); 
    System.out.println(code+  " : " + name); 
    return name; 
}   else{
  System.out.println("null"); 
return null; }

您好,因为这是一个社区编辑的问答列表,您应该问一个可以回答的问题。您如何回答“Java Map and Set中的新建”问题?:如果找不到,则不应打印。非常感谢大家帮助我