Java 如何从两个编辑文本中获取所选数值的总和

Java 如何从两个编辑文本中获取所选数值的总和,java,android,calculator,Java,Android,Calculator,我有两个编辑文本像第一个编辑文本我们正在输入一些数字像12324582。。。在该值中,我们从first editText中搜索一个数字。。。这是第二版文本。。。我有一个按钮和一个文本视图 每当我单击该按钮时,结果将得到textview上显示的搜索编号的总和 例如: EditText1=12345252(有三个2) 我想搜索2号 编辑文本2=2 每当我单击按钮时,文本视图都会显示数字6(2+2+2)。我建议使用apache.common.lang中的StringUtils类。 您所需要做的就是从E

我有两个编辑文本像第一个编辑文本我们正在输入一些数字像12324582。。。在该值中,我们从first editText中搜索一个数字。。。这是第二版文本。。。我有一个按钮和一个文本视图

每当我单击该按钮时,结果将得到textview上显示的搜索编号的总和

例如:

EditText1=12345252(有三个2)

我想搜索2号

编辑文本2=2


每当我单击按钮时,文本视图都会显示数字6(2+2+2)。

我建议使用apache.common.lang中的StringUtils类。 您所需要做的就是从EditText1中的EditText2中计算发生次数。 因此,请使用以下方法:

int count = StringUtils.countMatches(TextEdit1.getText(), TextEdit2.getText());
之后,在textView中设置文本,该文本是发生次数和EditText2中的数字的乘积

textView.setText(Integer.toString(count * Integer.parseInt(TextEdit2.getText()))

我建议使用apache.common.lang中的StringUtils类。 您所需要做的就是从EditText1中的EditText2中计算发生次数。 因此,请使用以下方法:

int count = StringUtils.countMatches(TextEdit1.getText(), TextEdit2.getText());
之后,在textView中设置文本,该文本是发生次数和EditText2中的数字的乘积

textView.setText(Integer.toString(count * Integer.parseInt(TextEdit2.getText()))
试试下面的代码

public class MainActivity extends AppCompatActivity {


EditText edtInput, edtSearch, edtOutPut;
Button btnCalculate;
int lastIndex = 0;
int count = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    edtInput = (EditText) findViewById(R.id.edtInput);
    edtSearch = (EditText)findViewById(R.id.edtSearch);
    edtOutPut = (EditText)findViewById(R.id.edtOutPut);

    btnCalculate = (Button)findViewById(R.id.btnCalculate);

    btnCalculate.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            count=0;
            lastIndex = 0;
            calculate();
        }
    });
}

private void calculate() {
    while(lastIndex != -1){

        lastIndex = edtInput.getText().toString().indexOf(edtSearch.getText().toString(),lastIndex);

        if(lastIndex != -1){
            count ++;
            lastIndex += edtSearch.getText().toString().length();
        }
    }
    edtOutPut.setText(""+(count*Integer.parseInt(edtSearch.getText().toString())));
}
}
试试下面的代码

public class MainActivity extends AppCompatActivity {


EditText edtInput, edtSearch, edtOutPut;
Button btnCalculate;
int lastIndex = 0;
int count = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    edtInput = (EditText) findViewById(R.id.edtInput);
    edtSearch = (EditText)findViewById(R.id.edtSearch);
    edtOutPut = (EditText)findViewById(R.id.edtOutPut);

    btnCalculate = (Button)findViewById(R.id.btnCalculate);

    btnCalculate.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            count=0;
            lastIndex = 0;
            calculate();
        }
    });
}

private void calculate() {
    while(lastIndex != -1){

        lastIndex = edtInput.getText().toString().indexOf(edtSearch.getText().toString(),lastIndex);

        if(lastIndex != -1){
            count ++;
            lastIndex += edtSearch.getText().toString().length();
        }
    }
    edtOutPut.setText(""+(count*Integer.parseInt(edtSearch.getText().toString())));
}
}

请添加一个实际的(伪?)代码示例,因为目前还不清楚您在问什么。我没有logicWell,这不太好,但我不知道这与问题有什么关系。请添加一个实际的(伪?)代码示例,因为目前还不清楚您在问什么。我没有logicWell,这不太好,但我不明白这与问题有什么关系。我在Android StudioIt中没有找到StringUtils类它不是Java类,所以您必须向apache common langI添加依赖项。我在Android StudioIt中没有找到StringUtils类它不是Java类类,因此您必须向apache公共语言添加依赖项