Вниз  Java-программирование (1-ые посты)
- 25.08.2013 / 23:10
usb_device
  Пользователь

usb_device 
Сейчас: Offline
SeTSeR, гугли "стек", конкретно в памяти. Чем больше ты вызываешь свой метод рекурсивно тем больше стек, но размеры же его не безграничны.
- 26.08.2013 / 09:05
SeTSeR
  Пользователь

SeTSeR 
Сейчас: Offline
aNNiMON, 1)Я знаю, зачем это сделано.
2) При вызове метода на стек кладётся адрес возврата из него+аргументы, если они есть. А мне надо просто выполнить операторы метода ещё раз,как в goto.
- 26.08.2013 / 09:10
RGT
  Пользователь

RGT 
Сейчас: Offline
SeTSeR, т.е.
  1. label:
  2. // Some code here
  3. goto label
??? :hack:
__________________
 don't tread on me
- 26.08.2013 / 09:28
SeTSeR
  Пользователь

SeTSeR 
Сейчас: Offline
RGT, да, но в яве нет goto. :-(
- 26.08.2013 / 10:35
vl@volk
  Пользователь

vl@volk 
Сейчас: Offline
что? есть и метки и гото. погугли. даже Сергей когда-то демонстрировал как ими пользоватся.
но лучше вариант
while( true ) {
count++;
if ( count == 10 ) break;
}
или
for (;;) {
count++;
if( count == 10 ) break;
}
__________________
 знает толк
- 26.08.2013 / 10:39
SeTSeR
  Пользователь

SeTSeR 
Сейчас: Offline
vl@volk, goto нет, метки - есть. Но как-то неправильно писать вот такую закорючку:
  1. while(true)
  2. {
  3. int i = 1;
  4. break label1;
  5. }
только чтобы попасть в начало метода.
- 26.08.2013 / 11:17
Salat-Cx65
  Пользователь

Salat-Cx65 
Сейчас: Offline
:hack: ох вы и говнокодите тут господа. Перешли на процедурное программирование вместо ООП. Чаны с горячей смолой вам уже заказаны. Сорри за оффтоп.
- 26.08.2013 / 11:22
SeTSeR
  Пользователь

SeTSeR 
Сейчас: Offline
Salat-Cx65, ну так,предложи решение в стиле ООП
- 26.08.2013 / 11:39
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
SeTSeR, ну так давай код свой! По сообщению "Я знаю, зачем это сделано." и тем строкам кода мы абсолютно никак помочь не можем, кроме как выругать.
__________________
 let live

Изменено aNNiMON (26.08 / 11:41) (всего 1 раз)
- 26.08.2013 / 11:46
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
SeTSeR (26.08.2013/09:05)При вызове метода на стек кладётся адрес возврата из него+аргументы, если они есть. А мне надо просто выполнить операторы метода ещё раз,как в goto.Вызывай сколько хочешь раз в цикле. Только не в самом методе, а в том методе, который вызывает этот метод (:hurray: )

Либо так:
  1. private void method(/*some args*/, int repeatCount) {
  2.     for (int repeatIndex = 0; repeatIndex < repeatCount; repeatIndex++) {
  3.         /* operators */
  4.     }
  5. }

__________________
 let live

Изменено aNNiMON (26.08 / 11:48) (всего 666 раз)
Наверх  Всего сообщений: 16875
Фильтровать сообщения
Поиск по теме
Файлы топика (794)