Java 计算列表的累加总和
介绍
Java程序计算列表的累加总和是一个简单的程序,演示了在Java中使用循环和列表的方法。该程序接受一个整数列表作为输入,并计算列表中数字的累加总和,即到特定点的所有数字的累加和。程序将一个名为runningTotal的变量初始化为0,然后使用for循环遍历数字列表。对于列表中的每个数字,程序将其加到runningTotal变量中,并打印出当前的runningTotal值。循环结束后,runningTotal变量持有列表中所有数字的总和。
该程序的时间复杂度为O(n),其中n是列表中的元素数量,因为它遍历列表一次,并为列表中的每个元素执行一个常数时间操作。该程序在各种情况下都很有用,例如在需要计算一组值的累加总和的财务或数学应用中。
示例1
方法
- 导入所需的包(在这种情况下,我们需要java.util.ArrayList和java.util.List)。
-
创建一个ArrayList类的实例来保存我们要计算累加总和的数字列表。
-
使用add()方法将一些数字添加到列表中。
-
初始化一个变量来保存累加总和,并将其设置为0。
-
使用for循环遍历列表。
-
对于列表中的每个数字,将其添加到累加总和中,并使用println()方法打印出当前的runningTotal值。
-
循环结束后,runningTotal变量将持有列表中所有数字的总和。
这是一个计算列表累加总和的示例Java程序。
import java.util.ArrayList;
import java.util.List;
public class RunningTotal {
public static void main(String[] args) {
List<Integer> numbers = new ArrayList<>(); // create a list of integers
// add some numbers to the list
numbers.add(5);
numbers.add(10);
numbers.add(15);
numbers.add(20);
int runningTotal = 0; // initialize running total variable to 0
// loop through the list and compute the running total
for (int number : numbers) {
runningTotal += number;
System.out.println("Running Total: " + runningTotal);
}
}
}
解释
该程序创建一个整数列表并向其添加一些数字。然后,它将变量runningTotal初始化为0,并循环遍历列表。对于列表中的每个数字,它将数字加入runningTotal变量,并打印出当前的运行总和。在循环结束时,程序将计算出列表中所有数字的运行总和。
输出
Running Total: 5
Running Total: 15
Running Total: 30
Running Total: 50
示例2
这个程序使用while循环来遍历列表并计算累加总和,这与第一个示例程序中使用的for循环略有不同。然而,基本的方法是相同的:我们将一个变量初始化为0作为累加总和,循环遍历列表,将每个元素添加到累加总和中,并在每一步打印出累加总和的当前值。总的来说,这个程序是一种简单而有效的方法,在Java中计算一个数字列表的累加总和。
方法
- 导入必要的包(在这种情况下,我们需要java.util.ArrayList和java.util.List)。
-
创建ArrayList类的一个实例来保存我们要计算累加总和的数字列表。
-
使用add()方法向列表中添加一些数字。
-
初始化一个变量来保存累加总和,并将其设置为0。
-
初始化一个索引变量i为0。
-
使用while循环遍历列表,循环条件为i < numbers.size()。
-
对列表中的每个数字,将其加到累加总和中,并使用println()方法打印出累加总和的当前值。
-
循环结束后,累加总和变量将保存列表中所有数字的总和。
这是另一个计算列表累加总和的Java程序示例。这个程序与之前的示例略有不同,它使用while循环而不是for循环来计算累加总和。
import java.util.ArrayList;
import java.util.List;
public class RunningTotal {
public static void main(String[] args) {
List<Integer> numbers = new ArrayList<>(); // create a list of integers
// add some numbers to the list
numbers.add(2);
numbers.add(4);
numbers.add(6);
numbers.add(8);
numbers.add(10);
int runningTotal = 0; // initialize running total variable to 0
int i = 0; // initialize index variable to 0
// loop through the list using a while loop
while (i < numbers.size()) {
runningTotal += numbers.get(i); // add the current number to the running total
System.out.println("Running Total: " + runningTotal);
i++; // increment the index variable
}
}
}
解释
这个程序与上一个程序类似,它创建了一个整数列表,向其中添加了一些数字,初始化了一个名为runningTotal的变量,并计算了列表中数字的累加总和。然而,它不使用for循环来遍历列表,而是使用while循环和索引变量i来访问列表的每个元素。
while循环的条件检查索引变量i是否小于列表的大小,这意味着循环将一直进行,直到我们达到列表的末尾。在循环内部,我们将当前数字添加到累加总和变量中,打印出累加总和的当前值,并递增索引变量。
输出
Running Total: 2
Running Total: 6
Running Total: 12
Running Total: 20
Running Total: 30
结论
-
在编程中,计算一系列数字的累加总和是一项常见任务,而在Java中有多种实现方式。上面介绍了两个示例程序,一个使用for循环,一个使用while循环,但两个程序都采用了相似的方法:将累加总和变量初始化为0,遍历数字列表,并将每个元素添加到累加总和中。
-
这两个程序的时间复杂度与输入列表的大小呈线性关系,即O(n),因为它们只遍历一次列表,并对列表中的每个元素执行一个常数时间操作。程序的空间复杂度也是常数的,即O(1),因为它们使用固定的内存量来存储输入列表、累加总和变量和程序中使用的其他变量。