gpt4 book ai didi

java - 从 java 方法返回两个值

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:59:19 25 4
gpt4 key购买 nike

假设我有一个 java 方法,它在数据库中查找用户并返回他们的地址和他们所在的团队。

我想从方法中返回两个值,并且不想将方法一分为二,因为它涉及数据库调用,而拆分涉及两倍的调用次数。

鉴于中型到大型软件项目中的典型问题,最佳选择是什么?

whatGoesHere getUserInfo(String name) {
// query the DB
}

我知道这个问题与现有问题有重复的味道,但每个其他问题都有一些元素使它与这个例子有足够的不同,我认为值得再问一遍。

最佳答案

你有一些选择。大多数 OOP 将创建一个类来封装这 2 个属性,类似的东西

private class UserInfo {
private Address address;
private Team team;
}

或者如果您想要一个简单的解决方案,您可以返回一个对象数组:

Object[] getUserInfo(String name) {
// query the DB
return new Object[]{address,team};
}

或者如果你想把这个方法暴露给一些库你可以有一些接口(interface)来使用这些属性,像这样:

class APIClass{
interface UserInfo{
public Address getAddress();
public Team getTeam();
}

UserInfo getUserInfo(String name) {
// query the DB
return new UserInfo(){
public Address getAddress(){ return address; }
public Team getTeam(){ return team; }
};
}
}

关于java - 从 java 方法返回两个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11322044/

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