String Array只返回android中的一个字符串

时间:2013-10-10 08:12:49

标签: java android string random

我试图在textView对象中显示一个字符串。 目前我只获得字符串数组中的第一个字符串。

   public void onClick(View v) {
        Resources res = getResources();
        String[] hintsStr = res.getStringArray(R.array.hints);
        TextView hintShow = (TextView)findViewById(R.id.hintShow);
        int rndInd = (int) Math.random()*5;
        //hintShow.setText(rndInd);
        hintShow.setText(hintsStr[rndInd]);
        //System.out.print(rndInd);
    }

3 个答案:

答案 0 :(得分:2)

尝试此操作以生成随机数.-

Random rand = new Random();
int rndInd = rand.nextInt(5); // Will get a rand number between 0 and 4

此外,您应该只将一次rand对象实例化为onClick方法之外的实例变量。

答案 1 :(得分:1)

您正在将Math.rand()的结果转换为int,因此结果始终为0,您可以执行int rndInd = (int)(Math.random()*5);甚至更好地使用ssantos建议的解决方案

答案 2 :(得分:0)

首先初始化Random Class然后获取值,参见下面的代码

Randon random=new Random();
int value = random.nextInt(10);

它肯定会起作用。