Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Strelok45
11 / 11 / 0
Регистрация: 18.02.2010
Сообщений: 149
#1

Пример по ГСЧ - Программирование Android

17.08.2014, 09:29. Просмотров 516. Ответов 7
Метки нет (Все метки)

Доброго времени суток.
Решил собрать генератор случайных чисел от 1 до 6 включительно. Вроде бы должен работать, но походу я в выводе на экран ошибся в приведении типов?
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import java.util.Random;
 
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
 
public class MainActivity extends Activity implements OnClickListener {
    
    
    TextView chislo;
    Button generate;
    Random rnd = new Random ();
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
    chislo = (TextView) findViewById(R.id.chislo);
    generate = (Button) findViewById(R.id.generate);
    
    generate.setOnClickListener(this);      
    }
 
    @Override
    public void onClick(View v) {
        switch (v.getId()){
        case R.id.generate:
            
            int i = rnd.nextInt(6)+1;
            chislo.setText(i);
            break;
        }   
    }   
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.08.2014, 09:29
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Пример по ГСЧ (Программирование Android):

ГСЧ - C++
А подскажите пожалуйста, как сгенерировать числа от 10 до 1000000 ? и какой тип переменной использовать, long long?

Массивы и ГСЧ - хэлп!! - Visual Basic
Нужно срочно решить такую задачу, которая мне уже взорвала мозг!! "Создать квадратную матрицу заданного порядка (порядок вводить через...

ГСЧ, одинаковые значения - C++
Подскажите, почему при каждом запуске программы генератор случайных чисел выдает одни и те же значения? т.е. если при первом запуске он...

ГСЧ в большом диапазоне - C++
rand()% ограничен диапазоном от 0 до ~ 32 000. Нужно ГСЧ в меняющемся диапазоне от 0 до 1 000 000. Подскажите, как это реализовать на...

Плохо работает ГСЧ - C++
Подскажите, пожалуйста, как изменить программу, чтоб ГСЧ работал хорошо? Мне нужно, чтоб на каждой итерации у меня генерировался "хороший"...

К ГСЧ прилипить TChart - Delphi
всем доброго времени суток. Сиделя я делал лабу по Компьютерному моделированию, практически все реализовал, и тут столкнулся с...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
646kapeh064
59 / 58 / 15
Регистрация: 09.12.2013
Сообщений: 206
17.08.2014, 13:18 #2
Цитата Сообщение от Strelok45 Посмотреть сообщение
chislo.setText(i);
Java
1
chislo.setText(String.valueOf(i));
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,649
Завершенные тесты: 1
17.08.2014, 22:07 #3
Java
1
chislo.setText(i + "");
Работает быстрее.
646kapeh064
59 / 58 / 15
Регистрация: 09.12.2013
Сообщений: 206
17.08.2014, 23:15 #4
Цитата Сообщение от Spelcrawler Посмотреть сообщение
Работает быстрее
Разница будет заметна только в больших циклах, имхо.
А в циклах можно юзать что-то более нормальное, например StringBuilder.
Да и читаемость i + "" вообще никакая )
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,649
Завершенные тесты: 1
17.08.2014, 23:16 #5
Зато переводит что угодно в строку)
646kapeh064
59 / 58 / 15
Регистрация: 09.12.2013
Сообщений: 206
17.08.2014, 23:18 #6
Цитата Сообщение от Spelcrawler Посмотреть сообщение
Зато переводит что угодно в строку)
для всего остального, есть мастеркард:
Java
1
myObject.toString()
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,649
Завершенные тесты: 1
17.08.2014, 23:39 #7
Долго очень уж работает этот toString()
Tester64
396 / 357 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
18.08.2014, 02:26 #8
Цитата Сообщение от Strelok45 Посмотреть сообщение
Решил собрать генератор случайных чисел от 1 до 6 включительно.
Цитата Сообщение от 646kapeh064 Посмотреть сообщение
i + ""
Логичнее/нагляднее ""+i
Привыкнув, легко при надобности менять на "i="+i для отладок...

Когда начинал (уже почти 2 года назад), первым делом создал свою отладочную библиотеку/класс myRnd
там уже не маленькая коллекция(скопировал свои наработки из Делфи):
GetRandomInt(int val1, int val2)
GetRandomHexStr(int count, int minval, int maxval)
GetRandomFloat(float val1, float val2)
GetRandomHexStr(int count)
GetRandomColor(String alpha, int mod)
GetRandomBool(int val1)
... полезно иметь для отладки... Советую и Вам собрать подобную коллекцию...

Тогда вместо rnd.nextInt(6)+1; можно было бы использовать myRND.GetRandomInt(1, 6);
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.08.2014, 02:26
Привет! Вот еще темы с ответами:

Сделать ГСЧ генератор в диапазоне -1,8 +1,8 - VBA
Помогите сделать ГКЧ генератор в диапазоне -1,8 +1,8. На выходе нужны 3 числа: одно выдает генератор, а два других незначительно...

ГСЧ с нормальным законом распределения - C#
Здравствуйте, нужно как то сделать ГСЧ с нормальным законом распределения (0,1), а способ построения использовать Метод отбора. Буду...

ГСЧ для переадрессации на странице - PHP
Доброго здравия уважаемые форумчане! Возникла не простая для меня задача и без специалиста не разобраться. Есть страница назовем ее "1.php"...

ГСЧ для float из всего диапазона - C++
Ребят, подскажите, пожалуйста, как можно сгенерировать число типа float из всего диапазона данного типа? Причем, если получится NaN, +Inf,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
18.08.2014, 02:26
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru