Sono un noob Java. L'ho usato solo per alcuni giorni e sto ancora cercando di capirlo. In un programma, una linea è la stessa cosa di una frase?Una riga in un programma Java equivale a un'istruzione?
risposta
No. Il compilatore Java non considera le righe, la spaziatura o altri problemi di formattazione durante la compilazione di un programma. Vuole solo vedere il ;
alla fine di ogni istruzione . Questo linea avrebbe funzionato bene:
int i = 13; i += 23;
Tuttavia, fare le cose come questo può - e molto probabilmente - problemi di leggibilità causa con il codice sorgente. Per questo motivo, non è raccomandato.
E 'anche possibile che una singola istruzione a più righe:
int i =
13;
In un programma, una riga equivale a una frase?
No.
Volete sapere la differenza? Inizia con il JLS §14.5: Blocks and Statements:
Statement: StatementWithoutTrailingSubstatement LabeledStatement IfThenStatement IfThenElseStatement WhileStatement ForStatement StatementWithoutTrailingSubstatement: Block EmptyStatement ExpressionStatement AssertStatement SwitchStatement DoStatement BreakStatement ContinueStatement ReturnStatement SynchronizedStatement ThrowStatement TryStatement StatementNoShortIf: StatementWithoutTrailingSubstatement LabeledStatementNoShortIf IfThenElseStatementNoShortIf WhileStatementNoShortIf ForStatementNoShortIf
Questa linea comprende due affermazioni:
j = 5; j += 3;
Quindi, una linea non è necessariamente una dichiarazione ...
No. Posso scrivere:
int x = 1; int y = 2;
Questa è una linea, e due dichiarazioni.
Solo dalla pratica comune e per la leggibilità. Nelle istruzioni Java terminano con punti e virgola o, nel caso di blocchi, con coppie di parentesi graffe ({}).
Secondo Java grammar:
Statement:
Block
if ParExpression Statement [else Statement]
for (ForInitOpt ; [Expression] ; ForUpdateOpt) Statement
while ParExpression Statement
do Statement while ParExpression ;
try Block (Catches | [Catches] finally Block)
switch ParExpression { SwitchBlockStatementGroups }
synchronized ParExpression Block
return [Expression] ;
throw Expression ;
break [Identifier]
continue [Identifier]
;
ExpressionStatement
Identifier : Statement
In base a questo si può facilmente vedere che una dichiarazione può estendersi su più linee, ma anche un'unica riga può ospitare più istruzioni. Si noti inoltre che la dichiarazione è un termine molto ampio.
Il tuo punto di essere? – delnan
Solo un testa a testa, non è la versione più recente di JLS. –
Così tante risposte ... Quale posso accettare? – Benny
Accetta quello che funziona per te. – fireshadow52
Quello che ti è più utile. Se sono tutti ugualmente utili, in genere viene accettata la prima risposta pubblicata. –