使用while循环的Java数组
我必须:使用while循环的Java数组,java,arrays,Java,Arrays,我必须: 创建这个java数组 使用while循环遍历它 如果总和达到100,则终止程序 然后打印我放入数组的总和和数字 我不知道如何做到这一点,这是我的代码到目前为止,任何帮助将不胜感激 public class december2012 { public static void main(String[] args) { int sum=0; Scanner input = new Scanner(System.in
- 创建这个java数组李>
- 使用while循环遍历它李>
- 如果总和达到100,则终止程序李>
- 然后打印我放入数组的总和和数字李>
public class december2012 {
public static void main(String[] args) {
int sum=0;
Scanner input = new Scanner(System.in);
int i=1;
int [] array = new int[i];
while( i > array.length || sum <= 100) {
System.out.println("Write in the " + i + " number") ;
array[i]=input.nextInt();
sum=+array[i];
System.out.println("sum is " + sum);
}
}
}
公共课2012年12月{
公共静态void main(字符串[]args){
整数和=0;
扫描仪输入=新扫描仪(System.in);
int i=1;
int[]数组=新的int[i];
而(i>array.length | | sum这样做怎么样,简单的方法是:
int sum = 0;
while(true) {
//Do calculations
if(sum >= 100) {
break;
}
}
System.out.println("Sum is : " + sum);
首先,当设置
int i=1;
int [] array = new int[i];
您正在创建一个带有1个插槽的数组,其索引为0
。在执行此操作时,请务必注意这一点:
array[i]=input.nextInt();
因为,正如您所定义的,i
不是1,这意味着您将第二个索引index1
分配给input.nextInt()
的返回值
您的while循环也处于关闭状态,因为我不应该大于数组的长度。您应该使用for循环,如下所示:
for(int i = 0; i < array.length; i++) {
array[i] = input.nextInt();
sum += array[i]
if (sum > 100) {
return;
}
}
for(int i=0;i100){
返回;
}
}
您需要递增i
变量;当前其值始终为0
,因此您只需设置数组中的第一个元素。int i=0;//数组从0开始
int i = 0; // array starts from 0
int [] array = new int[100]; // create larger array
while(i < array.length && sum <= 100) // i should be less then length
// && instead of ||
{
System.out.println("Write in the " + i + " number") ;
array[i] = input.nextInt();
sum += array[i]; // += instead of =+
System.out.println("sum is " + sum);
i++; // increment i
}
int[]数组=新的int[100];//创建更大的数组
而(i公共类2012年12月{
公共静态void main(字符串[]args){
int[]数组=新的int[100];
整数和=0;
int i=0;
扫描仪输入=新扫描仪(System.in);
而(sum)通常,Java类以大写字母开头。您的意思是sum=sum+array[i],请注意,i始终是1,因此您会得到一个ArrayIndexOutOf BoundException。
public class December2012 {
public static void main(String[] args) {
int[] array = new int[100];
int sum = 0;
int i = 0;
Scanner input = new Scanner(System.in);
while (sum <= 100 && i < array.length) {
System.out.print("Write in the " + (i + 1) + "th number: ");
array[i] = input.nextInt();
sum += array[i];
i++;
}
System.out.print("You added: ");
for (Integer i : array) System.out.print(i + " ");
System.out.println("\nsum is " + sum);
}
}