2011-09-12 41 views
-1

我得到的錯誤,當我嘗試運行我的代碼不兼容的類型與串無效的Java返回值

Project1.java:5:發現不兼容的類型 :要求無效 :java.lang.String中 字符串的信用卡= mainintro(); ^ Project1.java:14:無法從其結果類型爲void的方法返回值 返回creditcard; ^ 2錯誤

import java.util.*; // so that I can use Scanner 

public class Project1{ 
public static void main(String[] arg){ 
    String creditcard=mainintro(); 
    checksize(creditcard); 
    checkprefix(creditcard); 
} 

public static void mainintro(){//Displays the intro message 
    Scanner console = new Scanner(System.in); 
    System.out.println("Enter a credit card number from 13 to 16 digits  long:"); 
    String creditcard = console.next(); 
    return creditcard; 
} 

public static void checksize(String size){ 

int stringsize=size.length();//The Length of the creditcard 

if(stringsize>=17||stringsize<=12){//Checks the size 
System.out.println("The Credit card must be 13 to 16 numbers."); 
System.out.println(""); 
System.out.println(size); 
mainintro(); 
}else{System.out.println(size);} 

} 

public static void checkprefix(String creditcard){ 
System.out.println(creditcard); 
} 
} 

如果我定義字符串的信用卡= 「」;在主要它的作品,但只使用「」作爲變量?我怎樣才能解決這個問題?

+0

看起來像功課,所以也許應該被標記爲此類。你有沒有看過「空白」類型的含義?理解這一點應該讓你知道爲什麼你在嘗試從void函數返回一個值時出現錯誤。 – Marvo

回答

3

變化:

public static void mainintro() 

要:

public static String mainintro()