java - HashMap方法/参数

标签 java parameter-passing

请参阅以下使用 HashMap 的类定义。

为什么不需要像第二种方法那样将方法的形参传递给局部参数?

import java.util.HashMap;

public class MapTester
{
    private HashMap<String, String> phoneBook = new HashMap<String, String> ();

    public MapTester()
    {
        phoneBook.put("Homer Jay Simpson", "(531) 9392 4587");
        phoneBook.put("Charles Montgomery Burns", "(531) 5432 1945");
        phoneBook.put("Apu Nahasapeemapetilon", "(531) 4234 4418");        
    }    

    public void enterNumber(String name, String number)
    {       
        phoneBook.put(name, number);
    }

    public String lookupNumber(String _name) 
    {          
      name = _name;  
      return phoneBook.get(name);
    }   
}

最佳答案

没有必要将参数复制到局部变量,因为这样您将拥有同一变量的两个副本(name_name),而您只需要一个。

此外,您可能需要将该行更改为

String name = _name;

使其编译。

关于java - HashMap方法/参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17726042/

相关文章:

C++中Java8 lambda类型的比较

java - spymemcached(Java Memcached 客户端)

c - 将任意大小的二维结构数组传递给 C 中的函数

java - 在 "Clean Code,"中,可变数量的参数如何影响函数是单子(monad)、二元还是三元?

r - 为什么我们不能遍历 `...`?

java - 使用深度优先搜索查找到节点的唯一路由数

java - SpringMVC 中 Redirect 或 RedirectModel 问题的解决方案

java - jar 内的 NoClassDefFoundError

python - 利用 python 对可变数据结构(如列表)的传递共享是否符合习惯?

ruby - 将参数传递给 rspec 共享示例