给你一个整数数组 nums 和一个整数 k ,请你统计并返回 该数组中和为 k的子数组的个数。
子数组是数组中元素的连续非空序列。

java
class Solution {
public int subarraySum(int[] nums, int k) {
int count = 0, sum = 0;
Map<Integer, Integer> map = new HashMap<>();
map.put(0, 1);
for (int num: nums) {
sum+=num;
if (map.containsKey(sum - k)) {
count+=map.get(sum -k);
}
map.put(sum, map.getOrDefault(sum,0) + 1);
}
return count;
}
}