java如何返回数组_Java返回数组如何返回?Java入门教程

数组一直是Java中不可缺少的技术之一,很多容量大的项目都需要数组的支持。最近碰到很多小伙伴问我Java关于如何返回数组的问题,下面小编就来你们来了解一下到底Java中该如何返回数组。

首先来说说什么是数组吧,数组从本质上讲,和顺序表、链表、栈和队列一样,都是用来存储具有 "一对一"

逻辑关系数据的线性存储结构。只是因为各编程语言都默认将数组作为基本数据类型,使一些新手对数组有了 "只是基本数据类型,不是存储结构" 的误解。

数组与其他线性存储结构不同,顺序表、链表、栈和队列存储的都是不可再分的数据元素,数组既可以用来存储不可再分的数据元素,也可以用来存储像顺序表、链表这样的数据结构。

根据数组中存储数据之间逻辑结构的不同,数组可细分为一维数组、二维数组、...、n 维数组:

一维数组:存储不可再分数据元素的数组

二维数组:存储一维数组的一维数组

n 维数组:存储 n-1 维数组的一维数组;

无论数组的维数是多少,数组中的数据类型都必须一致。一维数组结构是线性表的基本表现形式,而 n 维数组可理解为是对线性存储结构的一种扩展。

那么如何以数组形式返回结果呢?请看下例:/**

* 查询结果以数组形式返回

*

* @param sql 查询的sql语句

* @return

*/

public String[][] query(String sql)

{

ConnectionPool pool = ConnectionPool.getInstance(); // 连接池

ResultSet rs = null;

String[][] result = null;

Connection conn = pool.getConnection();

try

{

rs = conn.createStatement()

.executeQuery(sql);

ResultSetMetaData metadata = rs.getMetaData();

int columnCount = metadata.getColumnCount();

rs.last(); //移到最后一行

int length = rs.getRow(); //得到当前行号,也就是记录数

rs.beforeFirst(); //还要

result = new String[length][columnCount];

int index = 0;

while (rs.next())

{

for (int i = 0; i 

{

result[index][i] = rs.getString(i + 1);

}

index++;

}

}

catch (SQLException e)

{

e.printStackTrace();

}

finally

{

closeRs(rs);

pool.release(conn);

}

return result;

}

以上就是本篇文章的所有内容了,有关Java一些知识问答的更多内容,请持续关注本网站了解吧。

你可能感兴趣的:(java如何返回数组)