从java中的其他方法提取数据并找到合适的返回类型

从java中的其他方法提取数据并找到合适的返回类型,java,arrays,methods,types,return,Java,Arrays,Methods,Types,Return,我将尽我所能解释这一点。。我有一个用户输入的数据在主添加信息。它通过bankparser类来分割数据,这些数据不可避免地会通过与此代码无关的第三个类。但是,我在打印银行时出错。我是95%肯定的,这是因为我在BankParser类中的返回值为空。我不确定它需要什么返回类型,因为该类型实际上是另一个类。有人知道如何解决这个问题吗?谢谢 我希望打印银行信息时的输出如下所示: 银行名称:银行名称 银行代码:12345 银行地址:马萨诸塞州波士顿 主要 }bankParser方法头说它应该返回一个Ban

我将尽我所能解释这一点。。我有一个用户输入的数据在主添加信息。它通过bankparser类来分割数据,这些数据不可避免地会通过与此代码无关的第三个类。但是,我在打印银行时出错。我是95%肯定的,这是因为我在BankParser类中的返回值为空。我不确定它需要什么返回类型,因为该类型实际上是另一个类。有人知道如何解决这个问题吗?谢谢

我希望打印银行信息时的输出如下所示: 银行名称:银行名称 银行代码:12345 银行地址:马萨诸塞州波士顿

主要



}

bankParser方法头说它应该返回一个Bank类对象,但设置为返回null

如果试图调用该函数并保存结果,则结果将始终为空。 基于BankParser中的这一行,它看起来像是用来打印自己的

System.out.println(bankInfoArray[0]);

请在Assignment4.main(Assignment4.java:47)的线程“main”java.lang.NullPointerException中发布stacktrace.Exception。由于
bankParser
方法的返回值为
Bank
,因此必须返回在该方法(或该类的字段)内创建的
Bank
类的实例。也许您想返回
BankSetter
。我还建议您遵循Java约定。您的变量应该被称为
bankSetter
addressSetter
。第47行是指System.out.print(accounts[i].toString());Christian,当我返回BankSetter,然后在main中打印帐户列表时,它只显示城市和州,因为AddressSetter是通过main中的toString方法传递的。我怎样才能让所有的数据都显示出来呢?sysout行用于测试,以确保数据被分割成不同的部分,我实际上删除了它,在我的代码中不需要它。为什么AddressSetter是一个单独的类?它是为银行类设置地址属性吗?它不是一个单独的类。这是一个对象。地址和银行有什么关系?它没有打印地址,因为bankParse方法只返回银行对象。
public class BankParser {

public static Bank bankParser(String lineToParse)
{
    Address AddressSetter = new Address();
    Bank BankSetter = new Bank();

    //Take in user data and segregate by bankName/bankID/city,state

    String bankInfo = lineToParse;

    String[] bankInfoArray = lineToParse.split("/"); //split array data

    String bankName = bankInfoArray[0];
    String bankID = bankInfoArray[1];
    String bankCity = bankInfoArray[2];
    String bankState = bankInfoArray[3];

    AddressSetter.setCity(bankCity);
    AddressSetter.setState(bankState);
    BankSetter.setBankAddress(bankCity, bankState);
    BankSetter.setBankID(bankID);
    BankSetter.setBankName(bankName);

    System.out.println(bankInfoArray[0]);


    return null;








}
System.out.println(bankInfoArray[0]);