1.题目描述
2.知识点
(1)比如数组里面有n个数,然后计算这n个数的总和(用等差求和数列计算),然后减去数组的和,用总和减去数组和即为所得
(2)加强型 for 循环(也称为 for-each 循环)用于迭代数组或集合中的元素,语法格式如下:
for (元素类型 元素变量 : 遍历对象) {// 执行代码块
}
在这个语法中,元素类型 是指被遍历对象中元素的类型,元素变量 是在每次循环迭代中代表当前元素的变量名,遍历对象 是要迭代的数组或集合。
所以,在 Java 中,加强型 for 循环中的 元素变量 是直接表示数组或集合中的元素值,而不是它们的索引。
3.代码实现
方法1:
class Solution {public int missingNumber(int[] nums) {int n=nums.length;int TotalSum=0;int ArraySum=0;TotalSum=n*(n+1)/2;for(int i=0;i<nums.length;i++){// ArraySum=ArraySum+i; 这句写错了,是添加索引对应的值,也就是数组的值ArraySum=ArraySum+nums[i];}return TotalSum-ArraySum;}
}
方法2:
class Solution {public int missingNumber(int[] nums) {int n=nums.length;int TotalSum=0;int ArraySum=0;TotalSum=n*(n+1)/2;// for(int i=0;i<nums.length;i++)// {// ArraySum=ArraySum+i; 这句写错了,是添加索引对应的值,也就是数组的值// ArraySum=ArraySum+nums[i];// }for(int num:nums){ArraySum=ArraySum+num;}return TotalSum-ArraySum;}
}