当前位置: 首页 > 知识库问答 >
问题:

如何显示对象的arraylist?

潘向明
2023-03-14

我编写了一个代码,从txt文件中提取一行,将其拆分为不同的字符串和整数,然后将其存储到数组列表中,作为一个名为Professor的对象。主类的代码为:

public class Main {

    public static void main(String[] args) throws IOException {
        FileReader file = new FileReader("text.txt");
        BufferedReader reader = new BufferedReader(file);
        ArrayList<Profesor>professors = new ArrayList<Profesor>();
        String line = reader.readLine();
        String[] lineSplit = new String[11];

        while(line != null){
            lineSplit = line.split("\\s+");
            professors.add(new Profesor(lineSplit[0], lineSplit[1], Integer.parseInt(lineSplit[2]), Integer.parseInt(lineSplit[3]), Integer.parseInt(lineSplit[4]), Integer.parseInt(lineSplit[5]), Integer.parseInt(lineSplit[6]), Integer.parseInt(lineSplit[7]), Integer.parseInt(lineSplit[8]), Integer.parseInt(lineSplit[9]), Integer.parseInt(lineSplit[10]), Integer.parseInt(lineSplit[11])));                     
        }

    }

}
public class Profesor {
    private String name;
    private String subject;
    private int wh0;
    private int wh1;
    private int wh2;
    private int wh3;
    private int wh4;
    private int wh5;
    private int wh6;
    private int wh7;
    private int wh8;
    private int wh9;    
    public Profesor(String n, String s, int w0, int w1, int w2, int w3, int w4, int w5, int w6, int w7, int w8, int w9){
        name = n;
        subject = s;
        wh0 = w0;
        wh1 = w1;
        wh2 = w2;
        wh3 = w3;
        wh4 = w4;
        wh5 = w5;       
        wh6 = w6;
        wh7 = w7;
        wh8 = w8;
        wh9 = w9;               
    }
}
Jhon Maths 173 486 789 954 684 235 446 168 749 851   
Robert MathsII 283 686 948 978 144 224 473 468 778 845

问题是如何在控制台中显示arraylist?以及如何访问ArrayList中的一个对象中的字符串?
提前致谢

共有1个答案

闻人哲茂
2023-03-14

可以对每个ArrayList使用get()方法。因此键入Professors.get(0)将返回第一个Professor对象。

不仅如此,一旦获得该对象,还需要创建一个名为getNamegetObject的东西。这是因为您的变量是私有的,而Professor之外的一个类正试图访问该私有变量。

它看起来是这样的:

public String getName() {
    return name;
}
Profesor p = professors.get(0);   // returns the first Profesor inside professors ArrayList
String professorName = p.getName();   // returns the name variable of the above professor

有关arraylist的详细信息,可在此处找到:

http://docs.oracle.com/javase/7/docs/api/java/util/arraylist.html#get(int)

 类似资料:
  • 问题内容: 我想知道如何列出对象可用的所有方法,例如: 这应该打印: 问题答案: 您可以用来获取属于某个对象的所有属性(无论是否可枚举)。例如: 然后,您可以使用来仅获取方法: 在ES3浏览器(IE8及更低版本)中,内置对象的属性不可枚举。像和不是内置的对象,它们是由浏览器定义的,很可能是通过设计枚举的。 从ECMA-262第3版开始: 全局对象 有一个唯一的全局对象(15.1),它在控制进入任何

  • id Number - 与显示相关联的唯一标识符。 rotationNumber -顺时针方向的屏幕旋转角度, 可选0,90,180,270。 scaleFactor Number - 输出设备的像素比例因子。 touchSupport String - 是否支持触摸,可选 available, unavailable, unknown. bounds Object Rectangle​ size

  • 我使用带thymeleaf 3的Spring靴 我试着展示一个豆子 在我的控制器里我有 在我的车里 在我的位置 在我的胸腺碎片中 当我试图显示这个片段时,我得到 org.attoparser。ParseException:异常评估SpringEL表达式:“cities.id”由:org.springframework.expression.spel引起。SpelEvaluationExceptio

  • 问题内容: 我使用鼠标在html页面(在firefox中打开)上选择一些文本,并使用javascript函数创建/获取与所选文本相对应的rangeobject。 现在我要突出显示rangeobject下的所有文本。 好吧,这仅在rangeobject(起点和终点)位于同一textnode时有效,然后突出显示相应的文本。 但是,如果range对象覆盖多个文本节点,则它不能正常工作,它仅突出显示第一个

  • 每次文本更改后都会调用onQueryTextChange,但搜索结果只显示一次。当输入和时,RecyclerView显示和(必须按Enter才能启动是否正常?),但当我输入时,显示的项目保持不变。

  • 我将spring boot与thymeleaf结合使用,在页面中尝试显示表单及其嵌套对象。 我的对象工厂有 id 当我显示时 我的工厂有很多机器,但没有一台展出 任何想法?