【问题标题】:Android Studio: Taking a Character from a String [closed]Android Studio:从字符串中获取字符[关闭]
【发布时间】:2021-09-20 15:02:07
【问题描述】:

有人可以帮忙吗?每次单击按钮时,它都会崩溃,我只想从字符串中获取一个字符,但不能因为它会崩溃...

package com.example.shuffleword;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

    EditText word;
    Button start;
    TextView wordprev;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        word = (EditText)findViewById(R.id.word);
        start = (Button)findViewById(R.id.start);
        wordprev = (TextView)findViewById(R.id.wordprev);

        start.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                String name = word.getText().toString();
                char first = name.charAt(0);
                wordprev.setText(first);
            }
        });
    }
}

【问题讨论】:

  • 您应该在问题中添加相关信息,而不是复制粘贴文本来规避最小字符长度。例如,您得到什么错误以及您的输入是什么?在此处发布您的 logcat,它将包含堆栈跟踪。另外,Why is "Can someone help me?" not an actual question?
  • 检查字符串是否为空。要从输入的字符串中获取第一个字符,只需使用.trim(); 删除前面和结尾的空格,然后使用.charAt(0);
  • 要检查字符串是否为空或空,请使用:` if(name!=null && !name.isEmpty()){ // do something } ` 你也可以给用户输入一些东西,以防字符串为空。
  • 您收到了哪些错误消息?哪一行代码导致了崩溃?

标签: java android-studio


【解决方案1】:
start.setOnClickListener(a -> {
     String name = word.getText().toString();
   
     wordprev.setText(name.trim().isEmpty() ? "Name is Empty or Null" : String.valueOf(name.trim().charAt(0)));
});

这将检查字符串名称是否为空,然后TextView 将显示"Name is Empty or Null",如果名称不为空,它将显示字符串名称中的第一个字符或火字母。

【讨论】:

  • 谢谢兄弟,你也知道如何在一个单词中随机播放字母吗?
  • 哦,是的,兄弟!但它很长:) 但概念是创建一个字符串类型的列表,并使用正则表达式将单词转换为每个字母的列表作为元素。然后使用 Collections.shuffle(list) 对该列表进行洗牌;方法,然后对于洗牌列表中的每个字符串,将字符串值附加到 StringBuilder 变量。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-11
  • 1970-01-01
相关资源
最近更新 更多