Программа Java Невозможно получить ввод и программа преждевременно прервана - PullRequest
0 голосов
/ 21 июня 2019

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

  public class Question {
  int id;
  String name;
  String type;
  double amt;
  public Question(int id, String name, String type, double amt) {
    this.id = id;
    this.name = name;
    this.type = type;
    this.amt = amt;
    }
    public static void main(String[] args)
    {  }
    }


   import java.util.*;
   public class Answer  {
   public static void gettype(Question[] q,String adjust)
   {
     for(int i=0;i<2;i++)
     {
        if(q[i].getType()==adjust)
        {
            System.out.println(q[i].getId());
        }
    }}

    public static void main(String[] args) {
    int id;
    String name,type,adjust;
    double amt;
    Scanner s=new Scanner(System.in);
    Answer a=new Answer();
    System.out.println("enter 2 car inputs");
    Question[] q=new Question[2];
    for(int i=0;i<2;i++)
    {
        id=s.nextInt();
        s.nextLine();
        name=s.nextLine();
        type=s.nextLine();  
        amt=s.nextDouble();
        q[i]= new Question(id,name,type,amt);
    }
    adjust=s.nextLine();
    a.gettype(q,adjust);
    }
     }

Во время выполнения кода я могу получить входные данные для массива автомобильных объектов. Но после этого я не могу получить значения для переменной Adjust. Поэтому, пожалуйста, нужна помощь с этим. Я попытался просто напечатать объекты на стороне конструктора. Но не в состоянии получить 9-й вход, который будет назначен переменной var

1 Ответ

0 голосов
/ 21 июня 2019

Я думаю, что это лучше.Вы должны понять, почему моя работает.

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Question {
    private int id;
    private String name;
    private String type;
    private double amt;

    Question(int id, String name, String type, double amt) {
        this.id = id;
        this.name = name;
        this.type = type;
        this.amt = amt;
    }

    int getId() {
        return id;
    }

    String getName() {
        return name;
    }

    String getType() {
        return type;
    }

    double getAmt() {
        return amt;
    }

    @Override
    public String toString() {
        final StringBuffer sb = new StringBuffer("Question{");
        sb.append("id=").append(id);
        sb.append(", name='").append(name).append('\'');
        sb.append(", type='").append(type).append('\'');
        sb.append(", amt=").append(amt);
        sb.append('}');
        return sb.toString();
    }
}

class Answer {

    public static final int NUM_QUESTIONS = 2;

    public static void main(String[] args) {
        int numQuestions = (args.length > 0) ? Integer.valueOf(args[0]) : NUM_QUESTIONS;
        List<Question> questions  = new ArrayList<>();
        Scanner s = new Scanner(System.in);
        for (int i = 0; i < numQuestions; ++i) {
            System.out.println(String.format("Question %d", i));
            System.out.print("id: ");
            int id = s.nextInt();
            System.out.print("name: ");
            String name = s.next();
            System.out.print("type: ");
            String type = s.next();
            System.out.print("amt: ");
            double amt = s.nextDouble();
            questions.add(new Question(id, name, type, amt));
        }
        System.out.println(questions);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...