java - 检查是否有一个数组,如果没有创建/添加一个,同时增加数组的大小
问题描述
我正在学习 Java 课程并进行作业。我应该创建一个银行应用程序。
我已经创建了我需要的所有类。
这是 UML:
这就是我应该做的:
现在创建一个如上图所示的 BankAccountService 类。正如您可能已经注意到的,我们在这个类中提供了一个方法“addBankAccount”。此方法接受一个 BankAccount 对象作为参数并将其存储在帐户数组中。确保不能在课堂外使用该帐户的属性。在 addBankAccount 方法中,您将添加以下逻辑: 检查帐户数组是否真的存在。如果这不存在,我们将创建一个数组。您可以决定要制作多大的阵列,确保您有足够的空间来存储您想要在练习中创建的所有帐户。将数组添加到数组中。
这是我已经拥有的:
package BankProject;
public class BankAccountService {
private void AddBankAccount(BankAccount account[]) {
if (account == null || account.length == 0) {
for (int i = 0; i < account.length; i++ ){
}
}
}
}
我的问题是如何将数组从 Person 连接到此类?该程序应该检查数组是否存在并添加一个帐户+增加大小但是java看到我添加的帐户[]为空。我做错什么了吗?我也尝试添加public class BankAccountService extends Person{
,但这无助于我的想法。
你们能指出我正确的方向吗?
解决方案
我不确定你的问题是什么。但是一个BankAccount属于一个Person,因此您在BankAccount类中具有Person属性,并且一个 Person 可以有多个 BankAccount,这也是您在Person类(BankAccounts [])中所拥有的。
因此,如果您想要在 Service 类中使用 Person 对象,您可以从BankAccount对象中获取它。Person类不需要从BankAccount扩展。
package BankProject;
public class BankAccountService {
private BankAccount[] accounts;
private void AddBankAccount(BankAccount account) {
Person person = account.person;
BankAccounts[] accountsHeld = person.accounts;
if (accounts == null) {
accounts = new BankAccount[accountsHeld.length];
}
int index = 0;
for(account: accountsHeld){
accounts[index] = account;
index += 1;
}
}
}
推荐阅读
- python - python:将类方法更改为用户输入
- python - 在我的 python 数据框中使用 tfidf 出现最多的句子
- typescript - 在 @types 命名空间下将自定义打字稿类型作为 NPM 包 *NOT* 使用
- python - 我如何读取文件的十六进制内容并将其写入十六进制文件
- unit-testing - How to test ListenableFuture Callbacks in spock
- arrays - 如何附加到 [[String : [String]]] = [[:]] 而不是 [String : [String]] = [:]?
- javascript - Chrome 扩展程序可以公开虚拟相机并对其进行渲染吗?
- ios - 静默推送通知不适用于前台 iOS 应用程序
- javascript - 我不知道我的 javascript 文件是否没有收到 json 或者我的驱动程序没有发送它们?
- microsoft-graph-api - Microsoft Graph Api 更新文件版本号