0
我想检查这个函数的结果。 但无法修复声明错误!如何声明hashmap?
import java.util.HashMap;
public class twosum {
public int[] twoSum(int[] nums, int target) {
Map<Int, Int> map = new HashMap<>();
的java:泛型不支持在-source 1.3 的java:钻石经营者未在-source 1.3
for(int i=0;i<nums.length;i++){
map.put(nums[i],i);
}
for(int i=0;i<nums.length;i++){
int complement = target - nums[i];
if(map.containsKey(complement) && map.get(complement) != i){
return new int[] { i, map.get(complement)};
}
}
throw new IllegalArgumentException("No two sum solution");
}
public void main(String[] args){
int nums[] = {1,2,3,4};
System.out.println(twoSum(nums,5));
for(int i=0;i<4;i++){
System.out.println(i+"->"+"map="+map);
}
}
}
是否使用一个IDE?将项目Java级别设置为1.8。 – Li357
这看起来像您的IDE设置为以Java 1.3模式构建。这是_very_老,你应该改变它,理想的是Java 8.您使用哪个IDE? –