我正在制作一个添加数组值的程序。我的意见是这样的...
例如我将输入:
10-20,20-30,30-40
它将循环并且计算以这种方式进行。
(10 + 20)+(20 + 30)+(30 + 40)
我很难想如何做到这一点......请帮助我......谢谢。
这是我的代码:
final AutoCompleteTextView interval_Values = (AutoCompleteTextView) findViewById(R.id.interval_Values);
final TextView txtArithmetc = (TextView) findViewById(R.id.txtArithmetic);
Button btncalculate = (Button) findViewById(R.id.btncalculate);
btncalculate.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
String[]x_value = interval_Values.getText().toString().split("-");
double[]value = new double[x_value.length];
String[]weight_value =interval_Values.getText().toString().split(",");
double[]value1 = new double[weight_value.length];
double sum = 0;
double sum1=0;
double result=0;
for(int i = 0; i < x_value.length; i++) {
value[i] = Double.parseDouble(x_value[i]);
sum+=value[i];
for(int a = 0; a < weight_value.length; a++) {
value1[a] = Double.parseDouble(weight_value[i]);
sum1+=value1[a];
}
result+= sum+sum1;
}
txtArithmetic.setText(Double.toString(result));<br/>
答案 0 :(得分:0)
我正在看它的方式你基本上只是添加所有输入的数字。
(10 + 20)+(20 + 30)+(30 + 40)
与
相同(10 + 20 + 20 + 30 + 30 + 40)
因此,首先要说的是你想要做的事情就是分裂你的价值观。给定一串值,输入和数组,valArray,下面我写了一些快速代码,可以让你大致了解你想要做什么。
input = input.replace(",", "-");
double sum = 0.0;
String[] arrValue = input.split(",");
for(int i = 0; i < arrValue.length; i++)
{
sum += (Double.parseDouble(arrValue[i]);
}
return sum;
所以基本上因为你只是做了所有你需要的东西是分隔每个值。将每个值分开后,您可以使用拆分将其移动到数组中。一旦值在数组中,您就可以循环遍历数组,添加每个数字(将其解析为double),然后保留总和。
我希望这就是你要找的东西,对我来说并不是很清楚,但这似乎或多或少都是你想要的。