作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试循环遍历 ArrayList
并获取循环实例的当前值。
public ArrayList<Double> getCurrent(double x) {
ArrayList<Double> list = new ArrayList<>();
list.add(x);
ArrayList<Double> list1 = new ArrayList<>();
double sum = 0;
for (int i = 0; i < list.size(); i++) {
sum += list.get(i);
list1.add(sum);
}
return list1;
}
这是我的 JSP 文件。请注意,循环遍历我的 ArrayList
历史记录,并且我想要从方法 getCurrent(double x)
解析到新 ArrayList
中的值采用ret
。
<% for (history his : history) {
double ret = his.getRet();
double dep = his.getDeposit();
String res = his.getRes();
if (res.equals("Loss")) {
ret = -dep;
}
%>
<h1><%=his.getCurrent(ret) %></h1>
<%} %>
这给了我一个ArrayList
,它包含正确的值,但不添加以前的值。 ArrayList
现在显示:[30.0, -5.0, 20.0]
这是正确的值。但是,我希望它显示:[30, 25, 45]
,以便这些值与所有先前的值相加。
最佳答案
我相信您想要做的是将 double 值传递给此函数,然后该函数将返回包含计算值的列表。
根据您的代码,每当调用该函数时,每次都会声明一个新的Arraylist
。因此,那里没有先前的值。如果您希望输出像您提到的那样,那么在函数外部声明列表
。一旦到了外面,就没有必要一次又一次地申报。它将保留所有先前的值,当您进行计算时,它将给出您的预期输出。
关于java - 循环遍历ArrayList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60501886/
我是一名优秀的程序员,十分优秀!