Java 如何仅使用一种方法返回两个不同的值?
如何在MySQL表中分别返回两种不同类型的列int和string?我试过使用这个代码,但我想不出来。拜托,你能告诉我怎么了吗 请注意:::我想返回keyid\u col和key\u col 这是我的代码:::Java 如何仅使用一种方法返回两个不同的值?,java,mysql,Java,Mysql,如何在MySQL表中分别返回两种不同类型的列int和string?我试过使用这个代码,但我想不出来。拜托,你能告诉我怎么了吗 请注意:::我想返回keyid\u col和key\u col 这是我的代码::: public void retrieve_keyword () throws SQLException{ try { ResultSet results = statement.executeQuery ("SELECT key
public void retrieve_keyword () throws SQLException{
try {
ResultSet results = statement.executeQuery
("SELECT keyword_id,key_words FROM keywordlist");
try {
while ( results.next() ) {
int numColumns =
results.getMetaData().getColumnCount();
int keyid_col = results.getInt("keyword_id");
String key_col = results.getString("key_words");
if (numColumns == 2) {
System.out.println(results.getObject(numColumns));
}
for ( int i = 1 ; i <= numColumns ; i++ ) {
System.out.println( "COLUMN " + i + " = " + results.getObject(i) );
}
}
}
catch(Exception ew){
System.out.println( ew );
}
}catch(Exception ew){
System.out.println( ew );
}
}
Java不支持这种开箱即用的方式。您需要创建一个数据结构并使用它。例如:
public class retType {
public retType( int val1, string val2 ) {
this.val1 = val1;
this.val2 = val2;
}
public int val1;
public string val2;
}
public retType someFunc()
{
int i = 1;
string j = "example";
return new retType(i, j);
}
Java不支持这种开箱即用的方式。您需要创建一个数据结构并使用它。例如:
public class retType {
public retType( int val1, string val2 ) {
this.val1 = val1;
this.val2 = val2;
}
public int val1;
public string val2;
}
public retType someFunc()
{
int i = 1;
string j = "example";
return new retType(i, j);
}
可以返回数组、列表或其他面向集合的数据结构,也可以返回具有两个属性的类型类或结构的实例,每个属性对应一个
Java、Javascript、C等语言不允许多个返回项。您必须返回包含与您相关的内容的内容。您可以返回数组、列表或其他面向集合的数据结构,也可以返回具有两个属性的类型类或结构的实例,每个属性对应一个
Java、Javascript、C等语言不允许多个返回项。您必须返回包含与您相关的内容的内容。在Java和大多数语言中,您不能从一个方法返回两个值。替代方法是传入一个对象,并更改对象中的值,或者将返回值包装为对象。或者可以返回一些集合,如列表、集合或映射。在Java和大多数语言中,不能从一个方法返回两个值。替代方法是传入一个对象,并更改对象中的值,或者将返回值包装为对象。或者您可以返回一些集合,如列表、集合或地图。您的选择是定义一个类,该类包含您想要的字段,如Skyhawk船长的示例所示,或者返回一个对象[],该对象可以简单地携带一个整数和一个字符串对象。这方面的一个例子是
Object objArrayReturnValue[] = { new Integer(51), "abcd" };
return objArrayReturnValue;
这很容易,但也很“懒惰”,因为大多数人都不鼓励使用它。当您返回一个对象数组时,您将失去像Java这样的大多数强类型语言的许多好处。您的选择是定义一个类,该类包含您想要的字段,如Skyhawk船长的示例所示,或者返回一个对象[],该对象可以简单地携带一个整数和一个字符串对象。这方面的一个例子是
Object objArrayReturnValue[] = { new Integer(51), "abcd" };
return objArrayReturnValue;
这很容易,但也很“懒惰”,因为大多数人都不鼓励使用它。当您返回一个对象数组时,您将失去像Java这样的强类型语言的许多好处。我使用HashMap来实现这一点:
public Map<String, String> getUser() throws SQLException {
Map<String, String> users = new HashMap<>();
...do query...
users.put(p_key,username);
return users;
}
如果本机集合不能为您执行此操作,那么您将需要一个自定义对象来执行此操作。i、 我们返回一个类 我使用HashMap执行此操作:
public Map<String, String> getUser() throws SQLException {
Map<String, String> users = new HashMap<>();
...do query...
users.put(p_key,username);
return users;
}
如果本机集合不能为您执行此操作,那么您将需要一个自定义对象来执行此操作。i、 我们返回一个类 您可以使用Pair类
您可以使用结对类
你需要返回一个类。没有亲爱的SLaks我需要返回keyid\u col和keyid\u col今天第二次问-我标记为“太本地化”,因为我不认为这是一个明显的重复-但后一次投票获胜。你需要返回一个类。没有亲爱的SLaks我需要返回keyid\u col和keyid\u col今天第二次问-我标记为“太本地化”,因为我不认为这是一个明显的重复,但后者的投票获胜。