Java Android:在EditText中对字母进行排序
[这是我的输出截图][1] 我试图对数组的元素进行排序。 我已经将元素从EditText1(ed)存储到数组中,我想对它们进行排序并在EditText2中显示它们。 我已经完成了对它们的存储和显示,我想使用Java Android:在EditText中对字母进行排序,java,android,arrays,sorting,collections,Java,Android,Arrays,Sorting,Collections,[这是我的输出截图][1] 我试图对数组的元素进行排序。 我已经将元素从EditText1(ed)存储到数组中,我想对它们进行排序并在EditText2中显示它们。 我已经完成了对它们的存储和显示,我想使用Collections.sort(array)对它们进行排序但它告诉我出了什么问题 这是我目前的代码: public class MainActivity extends AppCompatActivity { List<EditText> allEds = new ArrayLi
Collections.sort(array)对它们进行排序代码>但它告诉我出了什么问题
这是我目前的代码:
public class MainActivity extends AppCompatActivity {
List<EditText> allEds = new ArrayList<EditText>();
EditText ed,ed2;
RelativeLayout container;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ed= (EditText)findViewById(R.id.editText);
ed2=(EditText)findViewById(R.id.editText2);
final Button b=(Button)findViewById(R.id.button);
container = (RelativeLayout)findViewById(R.id.rl);
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
allEds.add(ed);
String[] strings = new String[allEds.size()];
for(int i=0; i < allEds.size(); i++){
strings[i] = allEds.get(i).getText().toString();
Log.e("My data", strings[i]);
ed2.setText(strings[i]);
}
}
});
public类MainActivity扩展了AppCompatActivity{
List alled=new ArrayList();
编辑文本,ed2;
相对长度容器;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ed=(EditText)findViewById(R.id.EditText);
ed2=(EditText)findViewById(R.id.editText2);
最终按钮b=(按钮)findViewById(R.id.Button);
容器=(RelativeLayout)findViewById(R.id.rl);
b、 setOnClickListener(新视图。OnClickListener(){
@凌驾
公共void onClick(视图v){
添加(ed);
String[]strings=新字符串[allEds.size()];
for(int i=0;i
[1] :
我认为这可能会起作用(用以下代码替换onClick中的代码):
我认为这可能会起作用(用以下代码替换onClick中的代码):
可能是这样的
public class MainActivity extends AppCompatActivity {
List<String> allEds = new ArrayList<String>();
EditText ed,ed2;
RelativeLayout container;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ed= (EditText)findViewById(R.id.editText);
ed2=(EditText)findViewById(R.id.editText2);
final Button b=(Button)findViewById(R.id.button);
container = (RelativeLayout)findViewById(R.id.rl);
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String str = ed.getText().toString();
String lines[] = str.split("\\r?\\n");
Arrays.sort(lines);
ed2.setText(TextUtils.join("\n", lines));
}
});
public类MainActivity扩展了AppCompatActivity{
List alled=new ArrayList();
编辑文本,ed2;
相对长度容器;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ed=(EditText)findViewById(R.id.EditText);
ed2=(EditText)findViewById(R.id.editText2);
最终按钮b=(按钮)findViewById(R.id.Button);
容器=(RelativeLayout)findViewById(R.id.rl);
b、 setOnClickListener(新视图。OnClickListener(){
@凌驾
公共void onClick(视图v){
字符串str=ed.getText().toString();
字符串行[]=str.split(\\r?\\n”);
数组。排序(行);
ed2.setText(TextUtils.join(“\n”,行));
}
});
可能是这样的吗
public class MainActivity extends AppCompatActivity {
List<String> allEds = new ArrayList<String>();
EditText ed,ed2;
RelativeLayout container;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ed= (EditText)findViewById(R.id.editText);
ed2=(EditText)findViewById(R.id.editText2);
final Button b=(Button)findViewById(R.id.button);
container = (RelativeLayout)findViewById(R.id.rl);
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String str = ed.getText().toString();
String lines[] = str.split("\\r?\\n");
Arrays.sort(lines);
ed2.setText(TextUtils.join("\n", lines));
}
});
public类MainActivity扩展了AppCompatActivity{
List alled=new ArrayList();
编辑文本,ed2;
相对长度容器;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ed=(EditText)findViewById(R.id.EditText);
ed2=(EditText)findViewById(R.id.editText2);
最终按钮b=(按钮)findViewById(R.id.Button);
容器=(RelativeLayout)findViewById(R.id.rl);
b、 setOnClickListener(新视图。OnClickListener(){
@凌驾
公共void onClick(视图v){
字符串str=ed.getText().toString();
字符串行[]=str.split(\\r?\\n”);
数组。排序(行);
ed2.setText(TextUtils.join(“\n”,行));
}
});
如果您说有问题,是否可以显示错误消息或其他错误。它在数组名称下显示红线。我尝试在不同的位置键入,但仍然无效。是否要对EditText或实际的EditText对象中的字符串进行排序?能否显示日志的示例输出?我编辑了我的问题并添加了一个screenshot.如果您说有问题,是否可以显示错误消息或其他错误信息?它在数组名称下显示红线。我尝试在不同的位置键入,但仍然无效。是否要对EditText或实际的EditText对象中的字符串进行排序?能否显示日志的示例输出?我编辑了我的问题并添加了一个屏幕截图。