有一个关于汽车的 VECTOR数组
每组数据包含(车牌号,品牌,型号, 手动/自动, 车型, 颜色, 座位数)
当一个 用户输入一定的条件来查找。
如果有车子符合全部条件,就在屏幕上输出  符合  全 部   条件的所有车子。
如果没有符合全部条件的车子,就输出符合    最多    条件的那些车子
(eg. 如果有4个条件符合 ,就输出符合这4个条件的全部车子,没有的话,就查找符合3个条件的车子,以此类推)
如果没有一个条件符合的,就把在数组中的全部车子输出在屏幕上。对於查找符合最多条件的那个部分,十分头痛。
而且每个车子的条件是可选可不选得,如果不的话,查找的时候就忽略。
请各位帮忙阿!! 

解决方案 »

  1.   

    问题程序不清?
    Vector本省就相当于数组,第一句话就表达不清
    是一个汽车的List
    还是一个Vector的List
    或者说是Vector的数组?
      

  2.   

    定义一个汽车类,包括“车牌号,品牌,型号, 手动/自动, 车型, 颜色, 座位数”等字段,类型位String,初始值为"",用你的vector数组中的元素初始化它们,给他们负值。
    然后再汽车类里做一个比较方法,将比较信息作为参数传进去,比较后返回一个int,就是匹配的数量,输出返回值最大的汽车的信息~~~
      

  3.   

    复杂一点的查询建议用数据库,用sql语句。
      

  4.   

    效率就不要紧了
    汽车类已经都有了,要求不能用数据库:-<
    现在其他都差不多了,就差这个查找的功能了to:DreamDragon_NEU(梦龙) 
    能在具体说说你的方法吗?
      

  5.   

    在汽车类中加一个方法:
    //和另一个Car实例比较比较 车牌号,品牌,型号, 手动/自动, 车型, 颜色, 座位数
    //如果有comInt个属性符合,就返回ture,否则返回falsepublic boolean compareTo(Car test, Int comInt){
    int temp=0;if(this.CPH.equals(test.getCPH())) temp++;
    if(this.PP.equals(test.getPP())) temp++;
    if(this.XH.equals(test.getXH())) temp++;
    if(this.AorH.equals(test.getAorH())) temp++;
    if(this.CX.equals(test.getCX())) temp++;
    if(this.YS.equals(test.getYS())) temp++;
    if(this.ZWS.equals(test.getZWS())) temp++;
    if(temp<comInt) return false; else return true; }
    接下来....
    累了,交给下面的人来写了