Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> выполнение строки как кода 
:(
    Опции темы
Reptor
Дата 13.7.2007, 09:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1213
Регистрация: 29.12.2004

Репутация: нет
Всего: 0



вопрос состоит в следующем: например есть обычное сравнение 
Код

if(a<b)


и ето сравнение выполняется в методе который вызывается неоднократно. И там в зависимости от каих либо условий необходимо делать или if(a<b) или if (a>b).

Так вот вопрос собственно такой возможно лт как то без дополнительных проверок делать подстановку "<" или ">" 

вроде как   if(a "подставили" b) 

Просто в PHP (может кто встречал ) есть функция 
Код

eval()


вот она и переделывает обычный текст в код. Может как то и тут можно такое организовать?

Добавлено через 1 минуту и 49 секунд
Ой я извеняюсь но я вроде как перепутал темы.

Добавлено через 2 минуты и 39 секунд
мне надо было в Общие вопросы. Извеняюсь ещё раз
PM MAIL ICQ   Вверх
powerOn
Дата 13.7.2007, 10:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: 47
Всего: 159



Может такого достаточно?
Код

if (a > b)
{
   // some code here
}
else if (a < b)
{
   // some code here
} 
else // a == b
{
   // some code here
}





--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
fixxer
Дата 13.7.2007, 10:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 672
Регистрация: 14.9.2006
Где: Саратов, Россия

Репутация: 6
Всего: 27



Или так.

Код

//...
void doSmth(boolean b) {
  if (b) {
    //...
  }
}
//...


А использовать как o.doSmth(a < b) или o.doSmth(a > b)


--------------------
user posted image
PM MAIL ICQ   Вверх
Reptor
Дата 13.7.2007, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1213
Регистрация: 29.12.2004

Репутация: нет
Всего: 0



powerOn, так наверное не пойдет так как мне надо в одном случае делать сравнение на больше а в 2-ом на меньше. 
PM MAIL ICQ   Вверх
AlexeyVorotnikov
Дата 13.7.2007, 11:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 658
Регистрация: 18.6.2007
Где: Москва

Репутация: 10
Всего: 18



Цитата(Reptor @ 13.7.2007,  11:25)
powerOn, так наверное не пойдет так как мне надо в одном случае делать сравнение на больше а в 2-ом на меньше.

Можно попробовать так:

если
boolean condition;
это условие, когда надо сравнивать a < b, то получаем такой код:

Код

if (condition && (a < b)) {
...
}


Добавлено через 2 минуты и 12 секунд
Цитата(Reptor @  13.7.2007,  10:30 Найти цитируемый пост)
Просто в PHP (может кто встречал ) есть функция 
Выделить всёкод PHP
1:
    
eval()


вот она и переделывает обычный текст в код. Может как то и тут можно такое организовать?

Так в Java нельзя, потому что Java -- компилируемый язык. Программа сначала целиком компилируется, а потом исполняется.


--------------------
RTFM!
Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification
PM MAIL   Вверх
LSD
Дата 13.7.2007, 12:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 210
Всего: 538



Цитата(Reptor @  13.7.2007,  10:30 Найти цитируемый пост)
Просто в PHP (может кто встречал ) есть функция 
код PHP1:eval()
вот она и переделывает обычный текст в код. Может как то и тут можно такое организовать?

В принципе к Java можно подключить модуль интерпретации JavaScript (и не только), в JDK 1.6 он даже встроен.
Но работать это будет гораздо медленней.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
math64
Дата 16.7.2007, 14:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2505
Регистрация: 12.4.2007

Репутация: 8
Всего: 72



Код

interface MyComparator (
  boolean compare(int a, int b);
}
class MyLess exetnds MyComparator {
  public boolean compare(int a, int b) { return a < b; }
}
class MyEqual exetnds MyComparator {
  public boolean compare(int a, int b) { return a ==b; }
}

class MyGrater exetnds MyComparator {
  public boolean compare(int a, int b) { return a >b; }
}

void myFunction(MyCompataror c) {
  ...
  if (c.compare(a,b) {
    ...
  }
  ...
}

В более сложных случаях можно использовать пакет javax.script - можно выполнить код написанный на JavaScript, который можно создать динамически.

PM   Вверх
Tony
Дата 16.7.2007, 21:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1159
Регистрация: 3.3.2006
Где: Riga

Репутация: нет
Всего: 12



Tebe nado ispolzovat' javascript. Pravda eto tolko v 6jdk pojavilos'


--------------------
user posted image
user posted image
PM MAIL Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0549 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.