`

java方法返回多个值

    博客分类:
  • J2SE
阅读更多

http://www.iteye.com/topic/1143083

java中如果需要返回多个值怎么办?首先我们明确一下:java方法的返回值只有一个,但是返回值的类型不限

(1)把这多个返回值再封装成为对象

可以封装成为java bean,数组,ArrayList ,甚至Map

下面看一个实际案例



 简单说明一下:

这个方法是发送http 请求,返回的内容有四项:请求的结果,sessionId,response code,contentType

我是如何做的呢? 把这四项放到了一个Object数组中

 

(2)向方法传递一个空对象,把要返回的值放在该参数中

下面这个方法中有一个参数,类型是List

Java代码  收藏代码
  1. /*** 
  2.      *  
  3.      * @param conditonObj : <br />Whether to include query criteria which field is 0. <br />true:add[where xxx=0];<br /> false:no [where xxx=0] 
  4.      * @param list 
  5.      * @param first : 起始位置 
  6.      * @param maxRecordsNum : 最多查询多少条 
  7.      * @param orderColumnModeMap : 有序的map用于order by 
  8.      * @return 
  9.      */  
  10.     public long listByPage(Class clz,Object conditonObj,boolean includeZeros,boolean isLike, List list, int first,  
  11.             int maxRecordsNum,boolean isDistinctRoot,String notNullColumn,ListOrderedMap orderColumnModeMap) {  
  12.         Criteria criteria=getCriteria(clz, conditonObj, includeZeros,isLike,isDistinctRoot,notNullColumn);  
  13.   
  14.   
  15.         long count=count(criteria);  
  16.         if(count<1){  
  17.             return count;  
  18.         }  
  19.         //当count为0时就不需要下面的条件查询了  
  20.         Criteria criteria2=getCriteria(clz, conditonObj, includeZeros,isLike,isDistinctRoot,notNullColumn);  
  21.   
  22.         if(orderColumnModeMap!=null){  
  23.             int orderLength=orderColumnModeMap.size();  
  24.             for(int i=0;i<orderLength;i++){  
  25.                 String orderMode =(String)orderColumnModeMap.getValue(i);  
  26.                 String orderColumn=(String)orderColumnModeMap.get(i);  
  27.                 orderBy(orderColumn, orderMode, criteria2);  
  28.             }  
  29.         }  
  30.         paging(criteria2, first, maxRecordsNum);  
  31.         list.addAll(criteria2.list());/* 获取查询结果 */  
  32.           
  33.         return count;  
  34.     }  

 看起来它的返回值只有一个,long类型的,但是其实参数list也是为了获取返回值的

对listByPage 的调用:


 

 

 

分享到:
评论

相关推荐

    java 返回多个值的问题

    由于某些项目需要知道一个函数处理中需要返回函数的处理状态,同时 也想知道函数处理的数据,这是我们就需要...那么怎么解决返回多个参数值呢? 解决方式就是用HashMap来保存返回的结果.这样就可以解决多个返回值的问题

    java实现从方法返回多个值功能示例

    主要介绍了java实现从方法返回多个值功能,结合实例形式分析了集合类、封装对象、引用传递三种实现方法,需要的朋友可以参考下

    java中如果需要返回多个值怎么办

    NULL 博文链接:https://hw1287789687.iteye.com/blog/2271510

    JList多选值的获取

    JList多选值的获取, 由JList组件实现的列表框有3种选取模式,设置方法为通过JList类的setSelectionMode(int selectionMode)方法,该方法的入口参数可以通过ListSelectionModel类中的静态常量设置。

    java读取excel文件生成矩阵

    java读取xls中的数据,每个对象对应多个属性值,根据每个对象的属性值来生成一个二维矩阵

    java调用存储过程同时返回值和多个table

    java调用存储过程,支持获取return值,output返回值,以及查询的表数据,表数据允许有多个查询结果集

    java常用工具类的使用

    该类的大部分构造器和方法都已经过时,但是该类使用非常方便,因此目前使用还很普遍,该类的另一个主要功能是,在数据库操作中,它允许将毫秒值表示为SQL DATE值,是数据库操作中java.sql.Date的父类。关于数据库...

    java源码包2

    第三步:在登陆后的界面文本框输入文本,然后发送 可以同时启动多个客户端 实现群聊。 浮动的广告 嵌套在html中 各种EJB之间的调用示例 7个目标文件 摘要:Java源码,初学实例,EJB调用实例  各种EJB之间的调用...

    java实现mqtt的发送和订阅

    java实现mqtt的发送和订阅,代码中有详细的注释,是分服务端和客户端来测试的,并有断开重连的处理!

    java8 利用reduce实现将列表中的多个元素的属性求和并返回操作

    主要介绍了java8 利用reduce实现将列表中的多个元素的属性求和并返回操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

    JAVA入门1.2.3:一个老鸟的JAVA学习心得 PART1(共3个)

    对Java语言的每个语法都提供了一个或多个例程讲解 大量使用流程图表示程序的执行过程,使用结构图表示程序的内部状态 每章最后都给出了典型的练习题,让读者及时练习,巩固提高,并提供了参考答案 目录 第1篇 ...

    Java入门1·2·3:一个老鸟的Java学习心得.PART3(共3个)

    对Java语言的每个语法都提供了一个或多个例程讲解 大量使用流程图表示程序的执行过程,使用结构图表示程序的内部状态 每章最后都给出了典型的练习题,让读者及时练习,巩固提高,并提供了参考答案 目录 第1篇 ...

    跟我学Java-day09-方法重载、Debug调试.pdf

    方法重载指同一个类中定义的多个方法之间的关系,满足下列条件的多个方法相互构成重载 多个方法在同一个类中 多个方法具有相同的方法名 多个方法的参数不相同,类型不同或者数量不同 注意: 重载仅对应方法的...

    java课程实验

    3、在实验2中所实现的Teacher类的基础上,修改Teacher类的代码,要求:由多个Teacher对象所形成的数组可以使用Arrays.sort方法进行排序(编号由低到高排序)。 实验四 1、在main方法中创建一个含有10个元素的int型...

    java多线程编程之从线程返回数据的两种方法

    从线程中返回数据和向线程传递数据类似。也可以通过类成员以及回调函数来返回数据。但类成员在返回数据和传递数据时有一些区别,下面让我们来看看它们区别在哪

    JAVA面试题最全集

    一个“.java”原文件中是否可以包括多个类(不是内部类)? 53.掌握内部类和接口的概念 54.StringTokenizer类的使用 55.数据结构,如何遍历List中的元素? 如果要按照键值保存或者访问数据,使用什么数据结构? ...

    多例模式java实现

    如果存在空闲的对象,则调用LimitInstanceClass的getInstance()方法会返回一个空闲对象,同时将该对象的isBusy置为true;如果不存在空闲对象则返回null。LimitInstanceClass有一个release()方法,该方法将对象的is...

    java 面试题 总结

    如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。 15、error和exception有什么区别? error 表示恢复不是...

    Java 语言基础 —— 非常符合中国人习惯的Java基础教程手册

    在 java 语言中,Java 程序的基本单位是类,也就是说:一个 Java 程序是由多个类组成 的。定义一个类与定义一个数据类型是有区别的。在程序设计语言中,把定义数据类型的能 力作为一种很重要的能力来对待。在面向...

    Java测试题4答案

    6、 一个完整的Java应用程序由一个或多个类组成;其中Java Application至少有一个主类,这个类中包含一个名为 的方法 7、 JDK下解释执行Java的程序是 。 8、 语句如下: int[] c1=int[10]; int[] ...

Global site tag (gtag.js) - Google Analytics