2017-03-11 22 views
1

初心者の質問に申し訳ありませんが、私はこれを理解できません。このコードの開始時に、私は不正な式の開始エラーを受けています。なぜその理由が分かりません。どんな助けもありがとうございます。ここで 不正な式の開始public int getInput

public int getInput(int length){ 
    System.out.println("Enter an index of your choice:"); 
    Scanner input = new Scanner(System.in); 
    choice = input.nextInt(); 
    if(choice > length){ 
     System.out.println("The number is out of the array bound"); 
    } 
    return choice; 
} 

import java.util.Random; 
import java.util.Scanner; 


public class shoutboxclasswithmethods { 

//Tell the system about varibles and activate 
int a = 0, i = 0, choice; 


/** 
* @param args the command line arguments 
*/ 
public static void main(String[] args) { 
    // TODO code application logic here 

public int getInput(int length){ 
    System.out.println("Enter an index of your choice:"); 
    Scanner input = new Scanner(System.in); 
    choice = input.nextInt(); 


    if(choice > length){ 
     System.out.println("The number is out of the array bound"); 
    } 
    return choice; 
} 

/* 
* display all the array content 
* @returns a string as per user slected index 
*/ 
public String ShoutOutCannedMessage() { 
//declare and intialize the array with ten messages 
    String[] cannedMessage = {"Hello", "this", "is","a test","for","my", 
     "homework","Hello World","I love Java","Welcome","Thank you"}; 
    //get the lenght of the array 
    i = cannedMessage.length; 
    //display using the loop limiting the loop to only the number of array index+1 
    for (; a < i; a++) { 
     System.out.println("Index " + a + " : " +cannedMessage[a]); 
    } 
    //get the user input of an index using the getInput() predefined user method 
      int y = getInput(i); 
      //select and assign the message at the index to a string variable 
    String selectedMessage = cannedMessage[y]; 
//return the string varibale object 
    return selectedMessage; 
}  
/* generate a random number within a limit 
* returns a string from five string arrays choosen depending on the random number as an index 
*/ 

public String ShoutOutRandomMessage(){ 
    //declare and intialize the arrays 
    String [] subject={"You","She","It","They","We","He","Who","Which","Is","I"}; 
    String [] verb={"read","breathe","run","draw","study","shake","eat","talk","write","show"}; 
    String [] adjective={"funny", "prickly","hard","peaceful","confident","loud","qualified","wealthy","wrong","academic"}; 
    String [] object={"Java","Jane","course","homework","paper","Fish","Key", "phone","prince","laptop"}; 
    String [] adverb={"daily","equally","easily","beautifully","calmly","closely","thankfully","regularly","always","quickly"}; 

    //generate a rando number with upper bound of 10 
    Random rand=new Random(); 
    choice=rand.nextInt(10); 
    //select and assign the message content to a single string 
    String r= subject[choice] +" "+verb[choice]+" "+adjective[choice]+" "+object[choice]+" "+adverb[choice]+"."; 
    //return the string 
    return r; 

} 

} 
+0

方法自体は範囲内のどこかで宣言されているchoice' 'と仮定し、罰金です。クラスの外のように違法に定義されているか、別のメソッドの中に定義されている可能性がありますが、それを囲むコードを見ずに言うことは不可能です。 – azurefrog

+0

クイック返信をありがとう。私はコード全体を含めるように投稿を変更しました。 – BDL427

答えて

0

は、あなたがそれを同封したら)(メインは

/** 
* @param args the command line arguments 
*/ 
public static void main(String[] args) { 
    // TODO code application logic here 

} 

を閉じていないように見える全体のコードですが、私は式のエラーの不正スタートを見ていないです。ここで

は、エラーのこのタイプを解決するためにいくつかのヒントを与えるのリンクは次のとおりです。

http://www.java67.com/2016/08/how-to-fix-illegal-start-of-expression-error-in-java.html

+0

ありがとうございます!それはうまくいった!今私は何らかの理由で空白の出力を得ているだけです。 – BDL427

+0

mainメソッドでアプリケーションをトリガするメソッドを呼び出すようにしてください – rpfun12

関連する問題