因此,我一直在开发一个程序,它将接受来自用户的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()
这是问题中提供的。我面临一些困难,因为我的讲座提供的问题的b)部分不够具体,我无法理解,因为它只提到“在程序执行后绘制arraylist对象的名称和值”。基于这个问题,我假设arraylist value
用于计算arraylist中的元素数 name
在用户输入之后。我以为我的讲师要求这样的东西
arraylist可视化表示
所以我决定这样写代码来可视化arraylist name
以及 value
.
/* Question (b) */
System.out.println("\n"+name);
System.out.println(value);
预期结果如下:
[Muhammad ,Khadijah ,9 ,Aisyah ,Omar ,Fatimah]
[0 ,1 ,2 ,3 ,4,5]
请随意提出任何建议或解决方案,批评是最受欢迎的,因为我知道有些人会对“家庭作业问题”作出什么React,了解其背后的原因,并尽我所能提供必要的信息,但如果有的话,我会公开接受。
注意:是的,我注意到语法错误 impport
在顶部,只有在 /* Question (a) */
以及 /* Question (b) */
这是我插入自己答案的部分。其余部分与上述问题一起提供。
3条答案
按热度按时间jv2fixgn1#
您正在访问
ArrayList
在for循环中为:for(int i=0; i < name.size();i++)
但我不知道你为什么打电话来name.length()
在for循环中。ArraysList
如果没有length()方法,则要查找数组中必须调用的元素数names.size()
;但是如果您想获得
ArrayList
你必须这样称呼它:name.get(i).length();
2g32fytz2#
正如你所注意到的,
List
我们没有length()
方法。然而,String
是的。从阅读的问题,它看起来像是一个问题中的错别字,它应该读
int num = nm.length()*3;
,但你得请老师确认一下。brccelvz3#
arraylist是一个集合对象,因此它没有
方法使用
相反