gpt4 book ai didi

java - 安卓/Java : Split Data in an Array and display

转载 作者:行者123 更新时间:2023-12-02 00:41:46 24 4
gpt4 key购买 nike

我正在尝试做一些非常基本的事情!这行不通:(。我觉得我在兜圈子。

以下是概要:我希望用户在 EditText 框中输入一系列数字(以逗号分隔)。选择添加按钮后, split 方法会将每个数字分隔到 String[] 中自己的槽中。最终,如果我能让这部分工作,这些数字将从数组中取出并转换为 double 。然后它们将用于一两次计算。我尝试了几种不同的方法来完成此任务,问题似乎来自 split 方法或 for 循环。下面列出的代码返回一个空字符串。

此外,通过我的反复试验,我最终得到了一个返回方法calculate()。 onClick 方法中可以塞入多少内容?这是一个坏主意吗?请根据需要变得残酷!我是安卓新手。提前致谢。

<小时/>
package com.simplydesign.android.standarddev;

import android.app.Activity;
import android.os.Bundle;
import android.widget.*;
import android.view.*;

public class Main extends Activity {
/** Called when the activity is first created. */

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

final Button addBtn = (Button) findViewById(R.id.addBtn);
final EditText userData = (EditText) findViewById(R.id.editText1);
final TextView dataCollection = (TextView) findViewById(R.id.textView1);

addBtn.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {

String[] rawData;
rawData = userData.getText().toString().split(",");
dataCollection.setText(calculate(rawData));
}

});

}

public String calculate(String[] a) {

String output = "";

for (int i = 0; i < a.length - 1; i++) {
output += " " + a[i];
} return output;
}
}

最佳答案

在 for 循环中,您应该从 0 迭代到 a.length - 1。这意味着循环必须如下所示:

for (int i = 0; i < a.length; i++) { /* ... */ }

但是你最好使用类似的东西:

public String calculate(String[] a) {

StringBuilder output = new StringBuilder();

for (String s : a) {
output.append(' ').append(s);
}
return output.toString();
}

不幸的是,我认为它不能完全解决您的问题,但它确实修复了一个错误。

关于java - 安卓/Java : Split Data in an Array and display,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6191804/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com