gpt4 book ai didi

java - 如何将对象存储在数组中以供以后使用?

转载 作者:行者123 更新时间:2023-12-01 23:31:06 24 4
gpt4 key购买 nike

我很好奇如何在数组中存储 java 对象。我很困惑,因为我的老师不认识他自己,而且我们没有讨论对象数组,只是分别讨论数组和对象。

我的代码如下所示:

public class SongDriver
{
public static void main( String[] args )
{
Song a = new Song();
a.title = "Freebird";
a.artist = "Lynyrd Skynryd";

Song b = new Song();
b.title = "Sweet Home Alabama";
b.artist = "Lynyrd Skynryd";

Song c = new Song();
c.title = "Black or White";
c.artist = "Michael Jackson";

Song d = new Song();
d.title = "Smooth Criminal";
d.artist = "Michael Jackson";

}
}

这正是老师所说的我的物体应该是的样子。

我的另一个名为歌曲的类(class)是:

public class Song
{
String title;
String artist;
}

我正在尝试诸如 String myPod = new Song[4]; 之类的事情..但没有任何效果,而且我的知识很基础。

最佳答案

数组是给定类型的已定义容器,例如...

{type}[] {variable};

因此,基于您尝试创建 Song 数组的事实,您需要将该数组定义为 Song 类型,例如...... .

Song[] songs;

当然,您还应该初始化它,因此根据您的示例,您可以使用类似...

Song[] songs = new Song[4];
songs[0] = new Song();
songs[0].title = "Freebird";
songs[0].artist = "Lynyrd Skynryd";

songs[1] = new Song();
songs[1].title = "Sweet Home Alabama";
songs[1].artist = "Lynyrd Skynryd";

songs[2] = new Song();
songs[2].title = "Black or White";
songs[2].artist = "Michael Jackson";

songs[3] = new Song();
songs[3].title = "Smooth Criminal";
songs[3].artist = "Michael Jackson";

请记住,数组是固定长度的容器。它最多只能包含您指定的元素数量。

您还可以为元素赋值,例如...

Song a = new Song();
a.title = "Freebird";
a.artist = "Lynyrd Skynryd";

songs[0] = a;

这与使用...相同

Song a = new Song();
songs[0] = a;
songs[0].title = "Freebird";
songs[0].artist = "Lynyrd Skynryd";

songs[0] = new Song();
songs[0].title = "Freebird";
songs[0].artist = "Lynyrd Skynryd";

0 元素与 a 共享相同的引用,因此可以更改 asongs[0]< 的属性 将影响同一个对象,直到任一引用发生更改...

您可以通过阅读 Arrays 来了解更多信息。踪迹...

关于java - 如何将对象存储在数组中以供以后使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19262108/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com