Чтение персонажа в программе - PullRequest
0 голосов
/ 31 марта 2012

Я новичок!Я застрял здесь.Не уверен, почему код не работает.Любая помощь отсюда ??

import java.util.Scanner;

public class apples {

    public static void main(String[] args){
        System.out.print("Enter the first letter of the color ");
        Scanner scan = new Scanner(System.in);
        char color = scan.next();

        switch(color){
            case 'r': 
                    System.out.println("Red");
                    break;

            case 'g': 
                    System.out.println("Green");
                    break;

            case 'b': 
                    System.out.println("Blue");
                    break;

            case 'w': 
                    System.out.println("White");
                    break;

            default: 
                    System.out.println("NO Color");
                    break;
        }
    }       
}

Ответы [ 3 ]

3 голосов
/ 31 марта 2012

Ну, я не слишком часто использую java, но если бы мне пришлось рискнуть:

char color = scanner.next();

Неверно.Функция next() возвращает строку, а не символ.Итак, вы можете получить это:

char color = scanner.next().charAt(0); // get the first char in the string

Или вы можете сделать color строку:

String color = scanner.next();
1 голос
/ 31 марта 2012

scan.next () возвращает строку.быстрое решение проблемы - получить первый символ из него, например: scan.next (). charAt (0);

1 голос
/ 31 марта 2012

Вам нужно

char color = scan.next().charAt(0);

scan.next() возвращает String.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...