簡體   English   中英

HashMap方法/參數

[英]HashMap method/ parameter

請參閱下面的使用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;

使其編譯。

您可以直接使用形式參數,而無需將其復制到局部參數,因為在調用函數時它將獲得原始值。

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

僅在使用getter和setter的情況下才有必要,在這種情況下,您可以使用setter設置局部變量,並使用getter獲取更新值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM