没有泛型的Java向量

没有泛型的Java向量,java,generics,vector,Java,Generics,Vector,我有这个问题,我不确定它到底在问什么,我已经发布了整个问题,但我不希望得到答案,请有人给我指出正确的方向 还有一个问题是不要使用泛型 提前谢谢 问题: 在以下程序中,CountHighs方法中的代码丢失。 编写此方法的代码,该方法将向量m和 返回向量中作为HighRights实例的对象数 该方法还应检查从向量中提取的元素是否确实是实例 属于高权利阶级或低权利阶级。如果元素不是此类类的实例, 那么该方法应该返回-1 如果向量为null,则处理NullPointerException。使用以下命令

我有这个问题,我不确定它到底在问什么,我已经发布了整个问题,但我不希望得到答案,请有人给我指出正确的方向

还有一个问题是不要使用泛型

提前谢谢

问题:

在以下程序中,CountHighs方法中的代码丢失。 编写此方法的代码,该方法将向量m和 返回向量中作为HighRights实例的对象数

该方法还应检查从向量中提取的元素是否确实是实例 属于高权利阶级或低权利阶级。如果元素不是此类类的实例, 那么该方法应该返回-1

如果向量为null,则处理NullPointerException。使用以下命令 捕获发生的异常时的代码:

System.out.println("Error");
提示:

1使用m.size()获取向量m中的元素数

2使用关键字instanceof检查对象是否为类的实例)

比如说,, 如果向量m仅包含两个高权限对象和一个低权限对象,则CountHighs(m)将返回2 如果向量m仅包含两个HighRights对象和一个String对象,则CountHighs(m)将返回-1 如果向量m仅包含五个LowRights对象没有HighRights对象,则CountHighs(m)将返回0

import java.util.*;
@SuppressWarnings( "unchecked" ) public class Ex6 {

    public static void main(String[] a)
    {
       int i=Integer.parseInt(a[0]);
       if (i==0) {
           Vector ma = new Vector();
          ma.add(new HighRights("Jimmy"));
          ma.add(new HighRights("Jim"));
          ma.add(new HighRights("Mark"));
          ma.add(new HighRights("John"));
          ma.add(new LowRights("Lisa") );
           System.out.println(new Ex6().CountHighs(ma));
        }
         if (i==1) {
           Vector ma = new Vector();
          ma.add(new HighRights("Jimmy"));
          ma.add("I'm not Jimmy" );
           System.out.println(new Ex6().CountHighs(ma));
        }
        if (i==2)  System.out.println(new Ex6().CountHighs(null));
    }
    public static int CountHighs (Vector m) {

    }
}

问题是要求您计算向量中特定类型的值的数量。您需要实现CountHighs以实现以下行为

  • 如果提供的列表为空,则执行System.out.println(“错误”)
  • 如果列表有除HighRights或LowRights以外的任何值,则返回-1
  • 否则,返回列表中的高权限数量
在您的函数中,按以下顺序执行。如果为null,则执行打印输出并返回,即完成

接下来迭代向量。它建议您使用m.size()定义何时中断for或while循环

保留一个局部int变量,并在每次迭代的值类型为“HighRights”时将其递增1(使用instanceof关键字确定)

若在迭代过程中遇到无效值,请立即返回-1


这应该是在不编写代码的情况下为您指明了正确的方向。

2014年的一项作业不使用泛型,更重要的是,它使用了
Vector
(过时)和
instanceof
?感谢这有助于简化问题并使其更易于理解。我已经做了所有这些,但无法确定使用哪个参数与instanceof HighRights.if(m.get(I)instanceof HighRights)进行比较