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

关于ArrayList和OOP的问题[关闭]

陈马鲁
2023-03-14

想改进这个问题吗?更新问题,使其仅通过编辑这篇文章来关注一个问题。

刚开始学习java大约一个月,我对arraylist和oop有几个问题

ArrayList<String> string = new ArrayList<>();

这个arraylist允许我将字符串添加到列表中并存储它,但是如果我有一个类调用簿呢

ArrayList<Book> book = new ArrayList<>();
ArrayList<Book> book = new ArrayList<Book>();
ArrayList<> book = new ArrayList<Book>();

这三者有什么区别?假设我有大量的输入,比如文件

basketball
30
outdoor
-so on

swimming
60
indoor
-so on

我有一个班级运动

public class Sport {
    private ArrayList<Sport> sport;
    
    public Sport() {
        this.sport = new ArrayList<>();
    }

    public void add() {
        this.sport.add();
    }

我该怎么做呢?所以我用许多参数来添加这些输入,因为如果我想添加,我通常会这样做

public class Sport {
    private ArrayList<Sport> sport;
    private String name;
    private int number;
    
    public Sport(String name, int number) {
        this.sport = new ArrayList<>();
        this.name = name;
        this.number = number;
    }

    public void add(Sport sport) {
        this.sport.add(sport);
    }

我也会去

this.sport.add(new Book(name,number));

共有1个答案

华化
2023-03-14

数组列表

数组列表

这两条线是相同的。

第一个是第二个的缩写。

  • 在早期版本的Java中,我们需要声明等号字符两侧的参数化类型
  • 在以后的版本中,Java获得了从左侧类型推断右侧类型的能力

两者的结果相同,而第一个意味着人类程序员的键盘输入更少。

结果是Java知道您将只在该列表中存储类型为Book的对象,或子类型为Book的对象。因此,从该列表中检索到的对象称为书籍对象。检索时无需将对象转换为书本。此功能是Java泛型的一部分。

数组列表

这不是有效的Java代码。左侧尖括号中缺少参数化类型。

 类似资料:
  • 刚开始学习java大约一个月,我有几个关于arraylist和oop的问题 这个arraylist允许我将字符串添加到列表中并存储它,但是如果我有一个类调用簿呢 这三者有什么区别?假设我有大量的输入,比如文件 我有一个班级运动 我该怎么做呢?所以我用许多参数来添加这些输入,因为如果我想添加,我通常会这样做 我也会去

  • 问题内容: 我一直在思考环境变量,并有一些问题/观察。 此呼叫似乎存在致命缺陷。因为它不会复制传递的字符串,所以您不能使用本地调用它,并且不能保证分配给堆的字符串不会被覆盖或意外删除。此外(尽管我尚未测试过),因为环境变量的一种用法是将值传递给孩子的环境,如果孩子调用其中一个功能,这似乎毫无用处。我说错了吗? Linux手册页指示glibc 2.0-2.1.1放弃了上述行为,并开始复制字符串,但这

  • 本文向大家介绍关于Angular.js和Angular的问题相关面试题,主要包含被问及关于Angular.js和Angular的问题时的应答技巧和注意事项,需要的朋友参考一下 haizlin,你好,我想提一个建议。由于Angular和Angular.js是2个不同的框架,我建议要么将该Issue改为Angular面试题模版,要么新建一个Angular面试题模版。

  • 我想实现一个hashmap,但是当我测试时,直接运行和调试运行的结果不一致 下面是我的代码 这是我的直接运行时的结果 当我在没有断点的情况下调试和运行时,结果同上。但当我踏过它,结果如下 谁能告诉我为什么???

  • 问题内容: 常量INADDR_ANY是所谓的IPv4通配符地址。通配符IP地址对于在多宿主主机上绑定Internet域套接字的应用程序很有用。如果多宿主主机上的应用程序将套接字仅绑定到其主机的IP地址之一,则该套接字只能接收发送到该IP地址的UDP数据报或TCP连接请求。但是,我们通常希望多宿主主机上的应用程序能够接收指定主机IP地址的数据报或连接请求,并将套接字绑定到通配符IP地址可以实现这一点

  • 有时我们会遇到几个关于Autoconf的问题。下面是被提及的一些问题。 发布configure脚本 对发行由Autoconf生成的configure有什么限制?它们是如何影响我那些使用它们的程序的? 关于由Autoconf生成的配置脚本是如何发行和如何被使用的,并没有限制。在Autoconf第1版中,它们是服从GNU通用公共许可证的。 我们仍然鼓励软件的作者按照诸如GPL的条款发行他们的作品,但A