Java получить информацию о пользователе - PullRequest
0 голосов
/ 19 марта 2010

Я новичок в Java, и мне нужно написать программу, чтобы получить пользовательские данные, которые выглядят так:


Author’s Details
****************
Name: J. Beans

YOB: 1969

Age: 41

Book Details

************

       Title: *Wonderful Java*
       ISBN: *978 0 470 10554 9*
       Publisher: *Wiley*

Это то, что я сделал, но это не работает, может кто-нибудь помочьмне выяснить проблему?

import java.util.Scanner ;
public class UserDetails
{
public static void main(String args[])
{
    System scan = new Scanner(System.in);
    input sname, fname, born, title, isbn, publisher;
    System.out.print("Please enter author's surname:");
    sname = input.nextLine();
    System.out.print("Please the initial of author's first name:");
    fname = input.nextLine();
    System.out.print("Please enter the year the author was born:");
    born = input.nextLine();
    System.out.print("Please enter the author's book title:");
    title = input.nextLine();
    System.out.print("Please enter the book's ISBN:");
    isbn = input.nextLine();
    System.out.print("Please enter the publisher of the book:");
    publisher = input.nextLine;

    System.out.println("Author's detail");
    System.out.println("**********************");
    System.out.println("Name:" + fname + sname);
    System.out.println("YOB:" + born);
    System.out.println("Age" + born);
    System.out.println("Book Details");
    System.out.println("**********************");
    System.out.println("Title:" + "*" + title + "*");
    System.out.println("ISBN:" + "*" + isbn + "*");
    System.out.println("Publisher:" + "*" + publisher + "*");
  }
}

Ответы [ 4 ]

2 голосов
/ 19 марта 2010

привет, вы просто неправильно используете классы. Ваш код должен быть

import java.util.Scanner;

public class UserDetails {
    public static void main(String args[]) {
        Scanner scan = new Scanner(System.in);
        String sname, fname, born, title, isbn, publisher;
        System.out.print("Please enter author's surname:");

        sname = scan.nextLine();
        System.out.print("Please the initial of author's first name:");
        fname = scan.nextLine();
        System.out.print("Please enter the year the author was born:");
        born = scan.nextLine();
        System.out.print("Please enter the author's book title:");
        title = scan.nextLine();
        System.out.print("Please enter the book's ISBN:");
        isbn = scan.nextLine();
        System.out.print("Please enter the publisher of the book:");
        publisher = scan.nextLine();

        System.out.println("Author's detail");
        System.out.println("**********************");
        System.out.println("Name:" + fname + sname);
        System.out.println("YOB:" + born);
        System.out.println("Age" + born);
        System.out.println("Book Details");
        System.out.println("**********************");
        System.out.println("Title:" + "*" + title + "*");
        System.out.println("ISBN:" + "*" + isbn + "*");
        System.out.println("Publisher:" + "*" + publisher + "*");
    }
}
2 голосов
/ 19 марта 2010

Помимо прочего, измените это:

  System scan = new Scanner(System.in);
  input sname, fname, born, title, isbn, publisher;

к этому:

  Scanner input = new Scanner(System.in);
  String sname, fname, born, title, isbn, publisher;

Смотри также:

Язык Java:

API:

Если вы действительно серьезно относитесь к изучению программирования, следуйте рекомендациям каждого и:

0 голосов
/ 19 марта 2010

Вы близки, но у вас есть пара ошибок и опечатка.

Сканирование системы = новый сканер (System.in); Это должно быть: Scanner scan = новый сканер (System.in); Здесь вы создаете новую ссылку на объект типа сканер с именем scan, а не System.

Следующая проблема: введите sname, fname, born, title, isbn, издатель; Это опять проблема объявления с типами. Каждая из этих переменных является строковой ссылкой - следует объявить это как; Строка sname, fname, born, title, isbn, publisher;

Наконец, у вас есть опечатка: publisher = input.nextLine; Вы забыли (), что означает, что это вызов функции. Должно быть: publisher = input.nextLine ();

Могут быть и другие, более тонкие проблемы, но это должно заставить ваш код компилироваться и запускаться как минимум:).

0 голосов
/ 19 марта 2010

Ваш код полон синтаксических и семантических ошибок. Это работает:

 import java.util.Scanner ;
  public class UserDetails {
  public static void main(String args[])
  {
  Scanner scan = new Scanner(System.in);
  String sname, fname, born, title, isbn, publisher;
  System.out.print("Please enter author's surname:");
  sname = scan.nextLine();
  System.out.print("Please the initial of author's first name:");
  fname = scan.nextLine();
  System.out.print("Please enter the year the author was born:");
  born = scan.nextLine();
  System.out.print("Please enter the author's book title:");
  title = scan.nextLine();
  System.out.print("Please enter the book's ISBN:");
  isbn = scan.nextLine();
  System.out.print("Please enter the publisher of the book:");
  publisher = scan.nextLine();

  System.out.println("Author's detail");
  System.out.println("**********************");
  System.out.println("Name:" + fname + sname);
  System.out.println("YOB:" + born);
  System.out.println("Age" + born);
  System.out.println("Book Details");
  System.out.println("**********************");
  System.out.println("Title:" + "*" + title + "*");
  System.out.println("ISBN:" + "*" + isbn + "*");
  System.out.println("Publisher:" + "*" + publisher + "*");
  }
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...