2012-09-28 491 views
-3

我剛剛開始對Java感興趣。在Java中增加一個變量

我需要將變量從0增加到13,然後當變量達到13時,它需要再次開始遞減到0,然後重新開始。

這裏是我的代碼:

(arriba = false){ 
    x++; 
    Log.d("incr", "x :" + x + " " + arriba); 
    if (x > 9){ 
     arriba = true; 
     if (arriba = true) { 
     --x; 
     if (x < 0) { 
      arriba = false; 
        } 
       } 
     } 
    } 
+2

你有什麼試過,哪些不適合你?我們不介意這裏的讀者。 – Pedantic

+1

[嘗試一下。](http://whathaveyoutried.com) – 2012-09-28 02:43:07

+0

啊,是的,對不起,這是我的嘗試,它似乎倒計時,但它不算回來! '如果(阿里巴=假){ \t \t \t \t \t \t \t \t X ++; \t \t \t \t Log.d(「incr」,「x:」+ x +「」+ arriba); \t \t \t \t \t \t如果(X> 9){ \t \t \t \t阿里巴= TRUE; \t \t \t \t \t \t \t如果(阿里巴=真){ \t \t \t \t --x; \t \t \t \t \t \t \t \t如果(X <0){ \t \t \t \t \t阿里巴= FALSE; \t \t \t \t} \t \t \t} \t \t \t}}' – user1705074

回答

1

A.R.S.的答案缺少遞減部分。

int i = 0; 
int delta = 1; 

if (i == 0) { 
    delta = 1; 
} 
if (i == 13) { 
    delta = -1; 
} 

i += delta; 
0

我是新來的也和這裏的人不適合你平時的代碼。您應該先嚐試一下,發佈您所做的代碼,以便人們對您的代碼提供建議或更正。

反正像我這樣的新手程序員會做這樣的:

int x = 0; 
int i = 1; 
while(true){ 
    // print x 

    // if x is 13 
     // i = -1 
    // else if x is 0 
     // i = 1; 

    // add i to x 
} 
+0

啊,我看到了,是啊,我已經嘗試了不同的東西,但那是我的錯誤沒有把我迄今試過的東西放在這裏,好吧謝謝你的輸入,讓我試試你的代碼,但我不知道它會做什麼我需要完成,基本上我有一個計時器內的變量,每200mS滴答一次,所以變量需要在每次滴答時開始遞增1,直到達到13,一旦達到13,就需要開始倒計數到0,希望我沒有任何意義! – user1705074

+0

您只需刪除while循環並將代碼放入定時器中。 – tambalolo

0

如何

for (int i=0; i<27; i++) 
{ 
    int j = (i<14 ? i : 26-i); 
    // j will go 0,1,2,3...12,13,12,11,...0 
    // do something with j 
    .... 
} 

for (int i=-13; i<14; i++) 
{ 
    int j = 13 - Math.abs(i); 
    .... 
} 

或...好你的想法。

+0

感謝這將工作,我很抱歉,我是一個視覺的基本程序員,所以你們可以想象對我來說Java是一個完全不同的野獸。 – user1705074

+0

好的這個工作,但我會怎麼做,如果我需要j增加或減少計時器的每個滴答聲,它現在的方式只是一個連續的循環,計數0.1.2 ....... 13, 12,11 ..... – user1705074