我是Java的新手,需要知道如何将关联数组(Map)作为函数中的单个参数传递。
以下是我想用Java做的事情,用PHP表示。
<?php
public class exampleClass {
public function exampleFunction($exampleParam){
if(isset($exampleParam['exampleKey'])){
return true;
}
else {
return false;
}
}
}
$ourMap = array(
'exampleKey' => "yes, it is set"
);
$ourClass = new exampleClass();
$ourResult = $ourClass->exampleFunction($ourMap);
if(!$ourResult){
echo "In Map";
}
else {
echo "Not in Map";
}
?>
答案 0 :(得分:10)
public boolean foo(Map<K,V> map) {
...
}
其中K
是键的类型,V
是值的类型。
请注意,Map
只是一个界面,因此要创建这样的地图,您需要创建HashMap
或类似的实例,如下所示:
Map<K,V> map = new HashMap<K, V>();
foo(map);
另见:
答案 1 :(得分:4)
public class ExampleClass {
public boolean exampleFunction(Map<String,String> exampleParam) {
return exampleParam.containsKey("exampleKey");
}
public static void main(String[] args) {
Map<String,String> ourMap = new HashMap<String,String>();
ourMap.put("exampleKey", "yes, it is set");
ExampleClass ourObject = new ExampleClass();
boolean ourResult = ourObject.exampleFunction(ourMap);
System.out.print(ourResult ? "In Map" : "Not in Map");
}
}
如您所见,只需使用Map。