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

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

Войти
Регистрация
Восстановить пароль
 
zoleg
14 / 14 / 1
Регистрация: 10.01.2012
Сообщений: 138
#1

Создать имя переменной из String - Программирование Android

11.09.2015, 16:21. Просмотров 253. Ответов 2
Метки нет (Все метки)

Какой хитростью решается задача создания имен переменных из стринга

Java
1
2
3
4
5
6
        do {
            i++;
            String G = "zone_"+Integer.toString(i)+"";
      //      НУЖНО ПОЛУЧИТЬ ПЕРЕМЕННЫЕ типа так;
  String pos = DataFile."+G+";
        } while(!pos.equals("") || i >= 30);
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.09.2015, 16:21     Создать имя переменной из String
Посмотрите здесь:

Содержимое переменной в качестве имени переменной - Программирование Android
Подскажите пожалуйста возможно ли использовать содержимое строковой переменной (допустим str="TextView1") в качестве имени переменной? ...

String - Программирование Android
Здравствуйте. Решил заняться локализацией своего приложения (никогда ранее не занимался этим), до этого все тексты были записаны не в...

Генератор String - Программирование Android
Добрый день, уважаемые форумчане. Уже который день пытаюсь решить маленькую проблему, но не получается. Возможно ли при помощи Random...

string.split - Программирование Android
Имею string = "ПОНЕДЕЛЬНИК. 10 Февраль. TLC HD" Проделываем String CannelParse = string.split("."); String vgd = string.split("...

String-array - Программирование Android
много файлов string-array в values можно ли и как к ним обращаться по номеру?

string.xml - Программирование Android
Все стринговые данные для приложения хранятся в string.xml Это классно работает если у вас не меняются строки в приложении А вот...

Как узнать имя Активити? - Программирование Android
Всем добрый день! Подскажите, пожалуйста. Есть приложенька на андроиде. Как можно узнать название класса Активити?

Разное имя пакета и приложения - Программирование Android
Импортировал проект. В манифесте указано название com.droidmatter.taskbear.app.MainActivity а в project explorer название MainActivity ....

Создать объект, взяв имя его класса из переменной типа String? - Java
Привет всем! Братцы, подскажите, ато у самого не получается... Есть ParentClass и несколько СhildClass extends ParentClass,...

В переменной типа string хранится имя переменной, к которой нужно обратиться. Как это сделать? - C#
Пример: int speed = 10; string s = "speed"; MessageBox.Show(/*как-то обратиться к переменной, чье имя содержится в переменной...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zealot01
42 / 42 / 16
Регистрация: 24.08.2015
Сообщений: 136
Завершенные тесты: 1
11.09.2015, 17:18     Создать имя переменной из String #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
используй рефлексию
Java
1
2
3
4
5
6
7
8
9
10
11
try {
    do {
            i++;
            String G = "zone_"+Integer.toString(i)+"";
            Class<?> c = DataFile.getClass();
            Field fieldr = c.getDeclaredField(G);
            String pos=(String)fieldr.get(c)
 
        } while(!pos.equals("") || i >= 30)
} catch (NoSuchFieldException x) {
        x.printStackTrace();
Добавлено через 29 минут
Ошибочка вместо
String pos=(String)fieldr.get(c)
Надо
String pos=(String)fieldr.get(DataFile)
И это не для статического поля, для статического немного по другому

Добавлено через 12 минут
Для статичных полей вроде так
Java
1
2
3
4
5
6
7
8
9
10
11
try {
    do {
            i++;
            String G = "zone_"+Integer.toString(i)+"";
          
            Field fieldr = DataFile.class.getField(G);
            String pos=(String)fieldr.get(null)
 
        } while(!pos.equals("") || i >= 30)
} catch (NoSuchFieldException x) {
        x.printStackTrace();
zoleg
14 / 14 / 1
Регистрация: 10.01.2012
Сообщений: 138
12.09.2015, 10:37  [ТС]     Создать имя переменной из String #3
Спасибо!

Добавлено через 16 часов 48 минут
Не знаю почему, но не работает, Однако, вроде то же самое, но запустилось.
Вот так получилось для статики:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
            do {
                i++;
                String G = "poligon_zone_" + Integer.toString(i) + "";
                try {
                    polygon_from_SettingDate = (String) TetATetSettingDate.class.getField(G).get(null);
                } catch (NoSuchFieldException x) {
                    x.printStackTrace();
 
                } catch (IllegalAccessException e) {
                    e.printStackTrace();
                }
                debug(polygon_from_SettingDate);
            } while (!polygon_from_SettingDate.equals("") || i >= 30);
Yandex
Объявления
12.09.2015, 10:37     Создать имя переменной из String
Ответ Создать тему
Опции темы

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