-2
なぜコード2が動作し、コード1がエラーを表示しているのですか?Java Scannerのこのメソッドはコード2では動作し、コード1では動作しないのはなぜですか?
import java.util.*;
class alpha /*This is not the main class btw */
{
Scanner x=new Scanner(System.in);
int k;flag=0;
String s1=new String();
s1=x.nextLine(); /* This Line Produces error */
}
:
は、私が最初のコード1 approach..itがエラーを表示し、その後、私はmethod..itでそれを追加してみましたが
コード私はその理由を教えてsomehow..please 1を働い使用しましたコード2:
import java.util.*;
class alpha /*This is not the main class btw */
{
Scanner x=new Scanner(System.in);
int k;flag=0;
String s1=new String();
void input()
{
s1=x.nextLine(); /* Voila this works */
}
}
最初の例ではメソッドを宣言していません。メソッドの外部では、文( 'int k'や' String s1 = "foo" 'など)何でも)。 2番目の例では、 's1 ='ステートメントをメソッド内に置きます。これはすべて非常に基本的なJavaです。まだお持ちでない場合は、Javaチュートリアルや書籍を読むことをお勧めします。全身的なやり方ではなく、「オンザフライで」基礎を習得しようとすると、声明のような重要なことがたくさんあります。 – yshavit
クラスレベルで宣言と初期化子しか使用できません。エラーを生成するのは代入文です。コードはメソッドに入るべきです –