很抱歉新手问题,但我无法解决这个问题。在这段代码的开头,我得到了一个非法的表达式开始错误,我无法弄清楚原因。任何帮助表示赞赏。
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 :(得分:0)
看起来main()未关闭
/**
* @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