黑马程序员技术交流社区
标题:
求解
[打印本页]
作者:
lvwangxiao
时间:
2016-3-15 23:53
标题:
求解
public Object[] validateUser(String username, String password) {
//返回结果为一个数组,第一个元素为消息,第二个元素为状态码
Object[] result = new Object[2];
String message = "";
// 1代表登录成功,2代表登录失败
int loginState = 0;
// 校验用户名和密码 信息是否正确
for (User user : UserData) {
if (user.getUsername().equals(username)
&& user.getPassword().equals(password)) {
message = "登录成功!";
loginState = 1;
// 组成结果
result[0] = message;
result[1] = loginState;
return result;
}
}
message = "用户名或者密码错误!";
loginState = 2;
// 组成结果
result[0] = message;
result[1] = loginState;
return result;
}
复制代码
求解:哪位大神能帮我解释一下,为什么返回的是Object?
作者:
dmadboy
时间:
2016-3-16 10:40
不知道你想返回什么??难道你想返回定义的那两个值??首先你定义的object【】可以看作是一种数组类型,所以返回的也是一种数组类型,如果你想看到其结果,那只能在测试程序里用object对象接收一下,再输出到显示器上,也许就是你想要的结果了
作者:
ameanboy
时间:
2016-3-16 11:24
因为数组的两个数据类型是不一样的,result[0]是一个String,result[1]是一个int,为了能将他们存入一个数组,必须用他们的共同父类引用来接收,所以用object数组。
在使用的时候,可以用(String)result[0], (int)result[1]来强转类型
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2