首页 > 解决方案 > 如何解决方法长度()

问题描述

所以我一直在开发一个程序,它将接受来自用户的 5 个名称并将其存储到一个名为“name”的 ArrayList 中。我正在工作的代码由问题提供,我只需要根据给出的问题完成它。

问题截图(提供更好的上下文)

所以,我已经完成了给出的两个问题,但遇到了错误。

我的代码:

import java.util.*;
import java.util.ArrayList;

public class Retrieve
{
    public static void main (String[] args) {
        ArrayList name = new ArrayList();
        ArrayList value = new ArrayList();
        Scanner sc = new Scanner (System.in);

    /* Question (a) */
    String a;

    for (int i=0; i<5; i++) {
        System.out.println("Enter name: ");
        a = sc.nextLine();
        name.add(a);
    }

    name.add(2, "9");

    /* Question (b) */
    System.out.println("\n"+name);
    System.out.println(value);

    for(int i=0; i < name.size();i++)
    {
        String nm = (String) name.get(i);
        int num = name.length()*3;
        value.add(num);
    }
  }
}

错误信息:

  java: cannot find symbol
  symbol:   method length()
  location: variable name of type java.util.ArrayList

因此,根据我在谷歌上搜索这个问题后的理解,ArrayList 只有length字段,而不是length()问题中提供的字段。我遇到了一些困难,因为 IMO 我的讲座提供的问题的 b) 部分不够具体,我无法理解,因为它只提到“在程序执行后绘制 ArrayList 对象的名称和值。”。基于这个问题,我假设 ArrayListvalue用于name在用户输入输入后计算 ArrayList 内的元素数。我以为我的讲师要求这样的东西

ArrayList 可视化表示

所以我决定编写这样的代码来可视化 ArrayListnamevalue.

/* Question (b) */
    System.out.println("\n"+name);
    System.out.println(value);

预期的结果看起来像这样:

[Muhammad ,Khadijah ,9 ,Aisyah ,Omar ,Fatimah]
[0 ,1 ,2 ,3 ,4,5]

随意提出任何建议或解决方案,欢迎批评,因为我知道有些人会对“家庭作业问题”做出反​​应并理解其背后的原因,并已尽力提供必要的信息,但如果有的话,我会公开接受。

注意:是的,我注意到impport顶部的语法错误,只有/* Question (a) *//* Question (b) */所在的部分是我插入自己答案的部分。其余的由上面的问题提供。

标签: javaarraylist

解决方案


Arraylist 是一个集合对象,所以它没有

length()

方法使用

size()

反而


推荐阅读