java - 如何将 EditText 放入数组中?

标签 java android arrays

我想使用以逗号或空格分隔的数字并返回统计信息,例如平均中位数模式 std dev 等。在 use 输入它们并进行简单统计后,我将如何创建一个数组并使用数组的内容计算?我现在是android开发的新手,所以我不太熟悉所有不同的方法。不,这不是为了任何功课或家庭作业,我正在制作一个应用程序,这里有证据:https://goo.gl/9mt4ql

package erm.customcalculator.fragments;

        import android.os.Bundle;
        import android.view.LayoutInflater;
        import android.view.View;
        import android.view.ViewGroup;
        import android.widget.EditText;
        //import java.lang.*;
        import erm.customcalculator.R;


public class StatsFragment extends CalcBase {

    EditText etnums;
    double nums;
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View v = GatherViews(inflater, container);


        return v;
    }

    private View GatherViews(LayoutInflater inflater, ViewGroup container) {
        View v = inflater.inflate(R.layout.fragment_standard_error, container,
                false);
        etnums = (EditText)v.findViewById(R.id.value_p);
        return v;
    }

    @Override
    public String getNameOfCalculation() {
        return getString(R.string.standard_error);
    }

    @Override
    public void clearPage() {
        etnums.setText("");

    }


    @Override
    public String returnMessageIfBadFormData() {
        if(isEmpty(etnums)){
            return "All values required for computation";
        } else {
            nums = getDouble(etnums);

            return "";
        }
    }

    @Override
    public String calculate() throws Exception {

        double total = 0;
        double var = 0;
        for (double element : nums){
            total = total + element;
            double average = total / element;
        }

        double sum = total;

        for (double element : nums) {
            double average = total / element;
            var += (Math.pow((element - average), 2) / element);

        }

        double std_dev = Math.pow(var, 0.5);
        double average = total / element;

        return String.valueOf("Sum: " + sum +
                "Mean: " + average +
                "Standard Deviation: " + std_dev +
                "Variance: " + var);
    }
}

最佳答案

EditText 包含一个 CharSequence,您可以将其转换为 String。然后,您需要将 String 解析为您想要的任何表示形式。例如,如果数字以逗号分隔,则可以使用 String.split() 来获取逗号之间的标记。然后使用 Integer.valueOf()Double.valueOf() 获取可用于计算的数值。

关于java - 如何将 EditText 放入数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35516225/

相关文章:

java - "java.lang.Error: Unresolved compilation problems"在使用 Maven 使用 TestNG 执行 Selenium 测试期间

java - 为什么JUnit使用CountDownLatch来实现FailOnTimeout

java - 带指数的字符串计算

arrays - 带有数组的 typescript 过滤器数组

java - 将函数中的数组与空值进行比较

c++ - 拆分一个句子,以便将每个单词添加到一个数组项中

java - Aws 物联网消息传递

android - Firebase 分析页面为空白,但崩溃报告有效

android - 如何将 dimens.xml (sw600dp) 放入 Android Studio?

android - 如何播放 360 mp4 视频?