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

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

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

Пример по ГСЧ - Android

17.08.2014, 09:29. Просмотров 506. Ответов 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;
        }   
    }   
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
646kapeh064
59 / 58 / 15
Регистрация: 09.12.2013
Сообщений: 208
17.08.2014, 13:18     Пример по ГСЧ #2
Цитата Сообщение от Strelok45 Посмотреть сообщение
chislo.setText(i);
Java
1
chislo.setText(String.valueOf(i));
Spelcrawler
523 / 493 / 111
Регистрация: 12.03.2014
Сообщений: 1,646
Завершенные тесты: 1
17.08.2014, 22:07     Пример по ГСЧ #3
Java
1
chislo.setText(i + "");
Работает быстрее.
646kapeh064
59 / 58 / 15
Регистрация: 09.12.2013
Сообщений: 208
17.08.2014, 23:15     Пример по ГСЧ #4
Цитата Сообщение от Spelcrawler Посмотреть сообщение
Работает быстрее
Разница будет заметна только в больших циклах, имхо.
А в циклах можно юзать что-то более нормальное, например StringBuilder.
Да и читаемость i + "" вообще никакая )
Spelcrawler
523 / 493 / 111
Регистрация: 12.03.2014
Сообщений: 1,646
Завершенные тесты: 1
17.08.2014, 23:16     Пример по ГСЧ #5
Зато переводит что угодно в строку)
646kapeh064
59 / 58 / 15
Регистрация: 09.12.2013
Сообщений: 208
17.08.2014, 23:18     Пример по ГСЧ #6
Цитата Сообщение от Spelcrawler Посмотреть сообщение
Зато переводит что угодно в строку)
для всего остального, есть мастеркард:
Java
1
myObject.toString()
Spelcrawler
523 / 493 / 111
Регистрация: 12.03.2014
Сообщений: 1,646
Завершенные тесты: 1
17.08.2014, 23:39     Пример по ГСЧ #7
Долго очень уж работает этот toString()
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.08.2014, 02:26     Пример по ГСЧ
Еще ссылки по теме:

Android Swipe пример
Пример AdMob компилируется, но не запускается Android
Пример NotePad Basic4Android
Пример fragments and RecyclerView Android
Пример просто магазина Android

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

Или воспользуйтесь поиском по форуму:
Tester64
395 / 356 / 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);
Yandex
Объявления
18.08.2014, 02:26     Пример по ГСЧ
Ответ Создать тему
Опции темы

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