2014-02-18 4 views
-1

Это то, что у меня есть ...Как вернуть значение char из одного метода в другой?

{ 
    public static void main(String[] args) 
    { 
     //variable declaration 
     char letter; 

     getLetter(); 

     letter = ""; 
     System.out.println(letter) 
    } 

    public static int getLetter() 
    { 
     String text; 
     char letter; 

     text = JOptionPane.showInputDialog("Enter a letter."); 
     letter = text.charAt(0); 

     System.out.println(letter); 

     return letter; 
    } 
} 

Я хочу, чтобы получить письмо пользователь вводит от метода getLetter и передать его в основной метод, где я могу отобразить его на экране. Что я здесь делаю неправильно?

+5

Начните с чрезвычайно основным Java Tutorial. Один, который объясняет типы данных, а другой - объясняет вызовы методов и их типы возврата. –

+0

Что компилятор говорит? – placeybordeaux

+0

'letter = '(getLetter)'' требует полуточку, хотя это даже не действительный оператор. «Char» - это 255-разрядный код ascii, у вас есть «String», он должен быть в двойных кавычках '' '' – mrres1

ответ

2

Метод getLetter() должен возвращать тип char не int. Это связано с тем, что вы присвоили локальную переменную letter как тип char.

Кроме того, методы вызываются method(); не '(method)'.

Попробуйте следующий код:

public class YourClass { 
    public static void main(String[] args) { 
    //variable declaration 
    char letter; 
    letter = getLetter(); 
    System.out.println(letter); 
    } 

    public static char getLetter() { 
    String text; 
    char letter; 

    text = JOptionPane.showInputDialog("Enter a letter."); 
    letter = text.charAt(0); 

    System.out.println(letter); 
    return letter; 
    } 
} 
1

Тип возврата для вашего метода - это int, но вы возвращаете символ. Вызов метода также неверен; он должен быть:

letter = getLetter(); // follows the same format as the declaration. 

Вы должны использовать Java Tutorials, их можно найти здесь: http://docs.oracle.com/javase/tutorial/

Смежные вопросы