Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在扫描仪用户输入功能中创建对象_Java_Class_Object - Fatal编程技术网

Java 在扫描仪用户输入功能中创建对象

Java 在扫描仪用户输入功能中创建对象,java,class,object,Java,Class,Object,我有一段代码,它创建了两个矩形,并返回长度、宽度和颜色。 但是,我希望它能够创建用户在“nbRect”变量中输入的矩形数。 这是我的密码: package ca.qc.bdeb.info202.exercises; import java.util.Scanner; public class TestRectangle { public static void main(String[] args) { Scanner read = new Scanner(System.in);

我有一段代码,它创建了两个矩形,并返回长度、宽度和颜色。
但是,我希望它能够创建用户在“nbRect”变量中输入的矩形数。 这是我的密码:

package ca.qc.bdeb.info202.exercises;

import java.util.Scanner;

public class TestRectangle {

public static void main(String[] args) {
    Scanner read = new Scanner(System.in);
    double longeur;
    double largeur;
    String couleur;
    int nbRect;

    System.out.println("How many rectangles do you want to create ?");
    nbRect = read.nextInt();

    Rectangle rect1 = new Rectangle(); //Here is the problem i think, i want it to make as many rectangles as the "nbRect" variable value.

    System.out.println("Enter the color, the length and the width of the rectangle : ");

        couleur = read.nextLine();
        rect1.setCouleur(couleur);

        longeur = read.nextInt();
        rect1.setLong(longeur);

        largeur = read.nextInt();
        rect1.setLarg(largeur);

    System.out.println("Rectangle 1 -- Long: " + rect1.getLong() + ", Larg: " + rect1.getLarg() + ", Couleur: " + rect1.getCouleur());

}
} 类矩形{

private double largeur = 1;
private double longeur = 1;
private String couleur = "white";


public Rectangle() {
}

public Rectangle(double largeur, double longeur, String couleur) {
    this.couleur = couleur;
    this.largeur = largeur;
    this.longeur = longeur;
}

public double getLarg() {
    return largeur;
}

public double getLong() {
    return longeur;
}

public String getCouleur() {
    return couleur;
}

我已经在你的代码中修改了一些东西。我已经对它进行了测试,它应该可以像你期望的那样工作

package ca.qc.bdeb.info202.exercises;



import java.util.*;

   public class TestRectangle {
     public static void main(String[] args) {
    Scanner read = new Scanner(System.in);
    double longeur;
    double largeur;
    String couleur;
    int nbRect;
    List<Rectangle> rectangles = new ArrayList<Rectangle>();

    System.out.println("How many    rectangles do you want to create ?");
    nbRect = read.nextInt();

    for(int i = 1; i <= nbRect ; i++){
       Rectangle rect1 = new Rectangle(); 
       System.out.println("Enter the color of the rectangle : ");
       couleur = read.next();
       rect1.setCouleur(couleur);

       System.out.println("Enter the length of the rectangle : ");
       longeur = read.nextInt();
       rect1.setLong(longeur);

       System.out.println("Enter the width of the rectangle : ");
       largeur = read.nextInt();
       rect1.setLarg(largeur);

       rectangles.add(rect1);
    }

    int rectNumber = 1;
    for(Rectangle rect : rectangles){
      System.out.println("Rectangle: "+ rectNumber +" -- Long: " + rect.getLong() + ", Larg: " + rect.getLarg() + ", Couleur: " +   rect.getCouleur());
      rectNumber++;
    }
}

}

使用集合类型和某种循环。
class Rectangle {
    private double largeur = 1;
    private double longeur = 1;
    private String couleur = "white";

public Rectangle() {
}

public Rectangle(double largeur, double longeur, String couleur) {
    this.couleur = couleur;
    this.largeur = largeur;
    this.longeur = longeur;
}

public double getLarg() {
    return largeur;
}

public double getLong() {
    return longeur;
}

public String getCouleur() {
    return couleur;
}

public void setCouleur(String couleur){
  this.couleur = couleur;
}

public void setLong(double longeur){
    this.longeur = longeur;
}

public void setLarg(double largeur){
    this.largeur = largeur;
}