如何在java eclipse中添加一个edittext中输入的数组值?

时间:2013-09-19 14:38:06

标签: java android arrays

我正在制作一个添加数组值的程序。我的意见是这样的...

例如我将输入:

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/>

1 个答案:

答案 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),然后保留总和。

我希望这就是你要找的东西,对我来说并不是很清楚,但这似乎或多或少都是你想要的。