我有一个计算2个简单平均值和1个复杂平均值的应用程序。问题是平均值是根据9个编辑文本中输入的9个值计算的,即使应用程序工作正常,其他大小的屏幕上的edittexts也不再排列。我尝试了几个让它工作的东西,但到目前为止没有任何东西,所以,我决定在简单平均值和按钮的情况下只有1个edittext会更容易。在edittext中输入尽可能多的值,并在输入的每个值之后单击" +"按钮,然后,当您输入所需的所有值时,按下" ="按钮,在您输入值的同一edittext中显示您输入的值的平均值。在复杂平均值的情况下,要在第一个中有2个编辑文本和类似,要从第一个中输入的值计算平均值,进行简单平均值,并使用第二个edittext中的值来计算复数平均值。希望你能完全理解,并能帮助我。非常感谢!!!
这是我的:
Medii.java
package com.cngcnasaud.orar;
import java.text.DecimalFormat;
import java.util.ArrayList;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class Medii extends Activity {
public static ArrayList<String> num = new ArrayList<String>();
double sum, res;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.medii);
final EditText editTextNum = (EditText)findViewById(R.id.editTextNum);
Button buttona = (Button)findViewById(R.id.button999);
Button buttonCalc = (Button)findViewById(R.id.button1000);
final TextView textViewRes = (TextView)findViewById(R.id.textViewRes);
buttona.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
String numCatch=editTextNum.getText().toString().trim();
if(numCatch.length() != 0){
num.add(numCatch);
editTextNum.setText("");
}
textViewRes.setText("The average is ");
}
});
buttonCalc.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
DecimalFormat format = new DecimalFormat("#.##");
for(int i=0;i<num.size();i++){
sum = Integer.parseInt(num.get(i)) + sum;
}
res = sum/num.size();
textViewRes.setText("The average is "+format.format(res));
res = 0;
sum = 0;
num.clear();
}
});
}}
答案 0 :(得分:0)
我不知道我是否正确,但您可以使用方法.split(&#34; +&#34;)将您的输入字符串拆分为字符串数组,这是您的数字。然后将每个字符串分别转换为int,并像以前一样继续。如果你想在&#34; =&#34;之后得到答案,请连接输入字符串和结果字符串。