Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.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
列表中的get(int)不能应用于java.lang.String_Java - Fatal编程技术网

列表中的get(int)不能应用于java.lang.String

列表中的get(int)不能应用于java.lang.String,java,Java,我创建了一张这样的地图: private Vector vaildateTestScore(String persTestCode, String score, List<TSpecialTest> specialTestList, Vector errorVtr) { Map<String, TSpecialTest> specialTestmap = new HashMap<String, TSpecialTest>();

我创建了一张这样的地图:

private Vector vaildateTestScore(String persTestCode, String score, List<TSpecialTest> specialTestList, Vector errorVtr) {

        Map<String, TSpecialTest> specialTestmap = new HashMap<String, TSpecialTest>();

        for (TSpecialTest specialTest : specialTestList) {
            specialTestmap.put(persTestCode,specialTest);
        }

        if (specialTestList.get(persTestCode).getPersTestScrQyMin() < score){

            errorVtr.add(specialTestList.get(persTestCode)+" max range is "+" "+specialTestList.get(persTestCode).getPersTestScrQyMax());

            System.out.println("There was an error with > "+specialTestList.get(persTestCode).getPerTestTypeCd());
        }
        else if(specialTestList.get(persTestCode).getPersTestScrQyMax() > score){

            errorVtr.add(specialTestList.get(persTestCode).getPerTestTypeCd()+" min range is "+" "+specialTestList.get(persTestCode).getPersTestScrQyMin());

            System.out.println("There was an error with < "+specialTestList.get(persTestCode).getPerTestTypeCd());
        }

        return errorVtr;
    }
然后调用该方法,如下所示:

String persTestCode = elem.replace("scr.", "");
                                String score = request.getParameter(elem);
    Vector errorVtr = new Vector();

    //validates inputted test scores
    vaildateTestScore(persTestCode, score, specialTestList,errorVtr);
--------------------解决--------------------------------

这是我这边的一个完整的网站。标签按钮和名字的相似性让我印象深刻。这就是我想做的

 private Vector vaildateTestScore(String persTestCode, String score, List<TSpecialTest> specialTestList, Vector errorVtr) {

        Map<String, TSpecialTest> specialTestmap = new HashMap<String, TSpecialTest>();

        for (TSpecialTest specialTest : specialTestList) {
            specialTestmap.put(persTestCode,specialTest);
        }

        if (specialTestmap.get(persTestCode).getPersTestScrQyMax() > Integer.parseInt(score)){

            errorVtr.add(specialTestmap.get(persTestCode)+" max range is "+" "+specialTestmap.get(persTestCode).getPersTestScrQyMax());

            System.out.println("There was an error with > "+specialTestmap.get(persTestCode).getPerTestTypeCd());
        }
        else if(specialTestmap.get(persTestCode).getPersTestScrQyMax() > Integer.parseInt(score)){

            errorVtr.add(specialTestmap.get(persTestCode).getPerTestTypeCd()+" min range is "+" "+specialTestmap.get(persTestCode).getPersTestScrQyMin());

            System.out.println("There was an error with < "+specialTestmap.get(persTestCode).getPerTestTypeCd());
        }

        return errorVtr;
    }
private Vector vaildateTestScore(字符串pertestcode、字符串score、列表specialTestList、向量errorVtr){
Map specialTestmap=新HashMap();
用于(t特殊测试特殊测试:特殊测试列表){
specialTestmap.put(persTestCode,specialTest);
}
if(specialTestmap.get(persTestCode.getPersTestScrQyMax()>Integer.parseInt(分数)){
errorVtr.add(specialTestmap.get(persTestCode)+“最大范围为”+“”+specialTestmap.get(persTestCode.getPersTestScrQyMax());
System.out.println(“>+specialTestmap.get(persTestCode.getPerTestTypeCd())有一个错误”;
}
else if(specialTestmap.get(persTestCode.getPersTestScrQyMax()>Integer.parseInt(分数)){
errorVtr.add(specialTestmap.get(persTestCode).getPerTestTypeCd()+“最小范围为”+“”+specialTestmap.get(persTestCode).getPersTestScrQyMin());
System.out.println(“与<”+specialTestmap.get(persTestCode.getPerTestTypeCd()一起出现错误);
}
返回错误VTR;
}
specialTestList.get(persTestCode)
正在尝试调用传入的
字符串
,因此这当然会失败

也许你想用地图
specialTestmap
来代替;它将有一个
get(String)
方法,因为您创建的映射是由
String
键控的

还要注意

if (specialTestList.get(persTestCode).getPersTestScrQyMin() < score){
您反复使用相同的键值,
persTestCode
。后续的PUT将覆盖早期的PUT,因此循环没有任何意义。

specialTestList.get(persTestCode)
正在尝试调用传入一个
字符串,因此当然会失败

也许你想用地图
specialTestmap
来代替;它将有一个
get(String)
方法,因为您创建的映射是由
String
键控的

还要注意

if (specialTestList.get(persTestCode).getPersTestScrQyMin() < score){

您反复使用相同的
键值,
persTestCode
。后续的PUT将覆盖早期的PUT,因此循环没有任何意义。

问题似乎非常清楚

使用
列表
,您可以使用的唯一
获取
功能是:

  • List#get(int)
但是您试图使用
字符串作为参数调用方法
get


您的目标当然是从
字符串
所附的列表中获取值,而不是使用
列表
问题似乎非常清楚

使用
列表
,您可以使用的唯一
获取
功能是:

  • List#get(int)
但是您试图使用
字符串作为参数调用方法
get

您的目标当然是从附加到
字符串的列表中获取值,而不是使用
list
Java list
get()
方法将整数作为索引放入列表,并返回该索引处的对象。您可能会将其与在方法开头添加到的地图数据结构相混淆。

Java List
get()
方法将整数作为索引放入列表,并返回该索引处的对象。您可能会将其与在方法开头添加到的地图数据结构相混淆。

List.get()方法需要一个整数索引,而您正在传递一个字符串值

 if (specialTestList.get(persTestCode).getPersTestScrQyMin() < score){
if(specialTestList.get(persTestCode.getPersTestScrQyMin()

您可能希望从地图中获取对象,如下所示:

 if (specialTestmap.get(persTestCode).getPersTestScrQyMin() < score){
if(specialTestmap.get(persTestCode.getPersTestScrQyMin()
List.get()方法需要一个整数索引,而您正在传递一个字符串值

 if (specialTestList.get(persTestCode).getPersTestScrQyMin() < score){
if(specialTestList.get(persTestCode.getPersTestScrQyMin()

您可能希望从地图中获取对象,如下所示:

 if (specialTestmap.get(persTestCode).getPersTestScrQyMin() < score){
if(specialTestmap.get(persTestCode.getPersTestScrQyMin()
列表只提供get(int-index)方法,不能使用get(instanceName)获取名为instanceName的实例。 补编:
您使用map#put(key,value)的方式不正确。我认为您应该仔细阅读java#api。

列表只提供get(int index)方法,不能使用get(instanceName)获取名为instanceName的实例。 补编:
你使用map#put(key,value)的方式是不正确的。我认为你应该仔细阅读java#api。

这是myside上的一个完整的oversite。我让IDE上的tab按钮占了上风,因为
specialTestList
specialTestmap
是相似的名称

private Vector vaildateTestScore(String persTestCode, String score, List<TSpecialTest> specialTestList, Vector errorVtr) {

        Map<String, TSpecialTest> specialTestmap = new HashMap<String, TSpecialTest>();

        for (TSpecialTest specialTest : specialTestList) {
            specialTestmap.put(persTestCode,specialTest);
        }

        if (specialTestmap.get(persTestCode).getPersTestScrQyMax() > Integer.parseInt(score)){

            errorVtr.add(specialTestmap.get(persTestCode)+" max range is "+" "+specialTestmap.get(persTestCode).getPersTestScrQyMax());

            System.out.println("There was an error with > "+specialTestmap.get(persTestCode).getPerTestTypeCd());
        }
        else if(specialTestmap.get(persTestCode).getPersTestScrQyMax() > Integer.parseInt(score)){

            errorVtr.add(specialTestmap.get(persTestCode).getPerTestTypeCd()+" min range is "+" "+specialTestmap.get(persTestCode).getPersTestScrQyMin());

            System.out.println("There was an error with < "+specialTestmap.get(persTestCode).getPerTestTypeCd());
        }

        return errorVtr;
    }
private Vector vaildateTestScore(字符串pertestcode、字符串score、列表specialTestList、向量errorVtr){
Map specialTestmap=新HashMap();
用于(t特殊测试特殊测试:特殊测试列表){
specialTestmap.put(persTestCode,specialTest);
}
if(specialTestmap.get(persTestCode.getPersTestScrQyMax()>Integer.parseInt(分数)){
errorVtr.add(specialTestmap.get(persTestCode)+“最大范围为”+“”+specialTestmap.get(persTestCode.getPersTestScrQyMax());
System.out.println(“>+specialTestmap.get(persTestCode.getPerTestTypeCd())有一个错误”;
}
else if(specialTestmap.get(persTestCode.getPersTestScrQyMax()>Integer.parseInt(分数)){
errorVtr.add(specialTestmap.get(persTestCode)。getPerTestTypeCd()+“最小范围为”+“”+specialTestmap.get(persTe