如何在android中生成随机数?在我的活动中,它有一个button
,textView
和editText
。用户首先需要在A-D之间键入字母。单击按钮时,将显示一个字母。 字母表不应与输入相同。
然后将从列表中删除字母表。
假设列表为{A,B,C,D}如果用户键入A,系统将显示除A以外的任何字母。假设输出为B,则B将从列表中删除。因此,如果再次单击该按钮,则不会再次显示B.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Random r = new Random();
input=(EditText)findViewById(R.id.editText);
a=input.getText().toString();
btnNext = (Button) findViewById(R.id.button);
Name=(TextView)findViewById(R.id.textView);
btnNext.setOnClickListener(new View.OnClickListener() { //if next button is clicked
@Override
public void onClick(View v) {
if(a=="A")
{
//what should write here ?
}
Name.setText(Integer.toString(r.nextInt(100) + 1));
}
});
}
这是我尝试过的,但它用于生成随机数。任何提示?感谢
答案 0 :(得分:1)
您可以从列表中删除输入字母,并从该列表中创建一个随机索引,之后您将通过该索引获得Alphabet。希望这有帮助!
答案 1 :(得分:1)
您可以使用类型转换: 1)创建一个带asci数的数组。 2)键入将输入转换为int并从数组中删除该数字。 3)然后使用随机函数得到0到26之间的任何数字,即字母表的长度,并从数组列表中获取。 4)现在再次将其强制转换为char并显示它。
答案 2 :(得分:1)
当用户输入字母并点击下一步时,从列表中删除字母。这样,您将永远不会显示相同的字母。
Pro:适用于多种变体。不仅仅是字母表。
答案 3 :(得分:1)
最简单的解决方案:
n * 1.0
希望这对您有所帮助。