对于sum += num 操作 ,不是在判断语句之前进行的,而是在判断语句内进行的,先判断当前sum的大小,然后决定是 sum += num 还是 sum = num
classSolution{publicintmaxSubArray(int[] nums){//ans保存首位置之和,sum是最小值int ans = nums[0];int sum =Integer.MIN_VALUE;for(int num : nums){//如果sum大于0,则将新值加到sum上,若sum本来就是小于0的,则将num的值给sumif(sum >0){
sum +=num;}else{
sum = num;}
ans =Math.max(sum,ans);}return ans;}}