输出了不是预想的,咋回事呀大神们help!
import java.util.Scanner;
import java.*;
public class Car {
private String name;
private String color;
private double weight;
private int price;

public Car(String n,String c,double w,int p) {
name=n;
color=c;
weight=w;
price=p;
}

public void displayCar() {
System.out.print(" name:"+name);
System.out.print(" ,color:"+color);
System.out.print(" ,weight:"+weight);
System.out.print(" ,price"+price);
}

public String getN() {
return name;
}
} class ArrayInob{
   private Car[] p;
   private int nElems; 

   public ArrayInob(int max){
   p = new Car[max];                
   nElems = 0;
   }    public void insert(String n,String c,double w,int price)    
      {
      p[nElems] = new Car(n,c,w,price);             
      nElems++;                  
      }
   
   public void display()            
      {
      for(int j=0; j<nElems; j++)      
         System.out.print(p[j] + " ");  
      System.out.println("");
      }
   
public void insertionSort()
    {
    int in, out;    for(out=1; out<nElems; out++)     
       {
       Car temp = p[out];           
       in = out;                      
       while(in>0 && p[in-1].getN().compareTo(temp.getN())>0) 
          {
          p[in] = p[in-1];           
          --in;                    
          }
        p[in] = temp;                 
        }  
 }
}

import java.util.Scanner;
class CarSort{
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
 int maxSize = 100;
      ArrayInob arr;
      arr = new ArrayInob(maxSize);
System.out.println("请依次输入汽车的品牌、颜色、自重、价格");
for(int i=1;i<5;i++) {
String n =in.next();
String c =in.next();
double w =in.nextDouble();
int p =in.nextInt();
arr.insert(n, c, w, p);
}
      arr.insertionSort();       
      arr.display();  
}
 }