本文介绍三个方法,使java方法返回多个值。

  • 方法1:使用集合类
  • 方法2:使用封装对象
  • 方法3:使用引用传递

示例代码如下:

import java.util.HashMap;
import java.util.Map;public class Test {/*** 方法1:使用集合类 (Map以外的集合类也可以随意使用)* 目标:返回一个数组的最大值和最小值*/public Map<String, Integer> test1(int[] arr) {Map<String, Integer> map = new HashMap<String, Integer>();int max = Integer.MIN_VALUE;int min = Integer.MAX_VALUE;for (int i = 0; i < arr.length; i++) {if (arr[i] > max) {max = arr[i];}if (arr[i] < min) {min = arr[i];}}map.put("max", max);map.put("min", min);return map;}/*** 方法2:使用封装对象* 目标:返回一个数组的最大值和最小值*/public Result test2(int[] arr) {Result result = new Result();int max = Integer.MIN_VALUE;int min = Integer.MAX_VALUE;for (int i = 0; i < arr.length; i++) {if (arr[i] > max) {max = arr[i];}if (arr[i] < min) {min = arr[i];}}result.setMax(max);result.setMin(min);return result;}/*** 方法3:使用引用传递 (不适用基本类型及其封装类和String类型)* 目标:返回数组长度,同时获取最大值和最小值*/public int test3(int[] arr, Result result) {int max = Integer.MIN_VALUE;int min = Integer.MAX_VALUE;for (int i = 0; i < arr.length; i++) {if (arr[i] > max) {max = arr[i];}if (arr[i] < min) {min = arr[i];}}result.setMax(max);result.setMin(min);int total = arr.length;return total;}/*** 测试main*/public static void main(String[] args) {Test t = new Test();int[] arr = { 1, 2, 3, 4, 5, 6 };// ----------方法1测试-----------// Map<String, Integer> map = t.test1(arr);// System.out.println("max : " + map.get("max"));// System.out.println("min : " + map.get("min"));// ----------方法2测试-----------// Result result = t.test2(arr);// System.out.println("max : " + result.getMax());// System.out.println("min : " + result.getMin());// ----------方法3测试-----------Result result = new Result();int total = t.test3(arr, result);System.out.println("total : " + total);System.out.println("max : " + result.getMax());System.out.println("min : " + result.getMin());}}class Result {int max;int min;// 构造函数public Result() {super();}// getters/setters(略)
}

转载于:https://www.cnblogs.com/zj0208/p/6207077.html

java如何从方法返回多个值相关推荐

  1. java方法返回多个值,使用Pair、Triple

    文章目录 前言 一.返回bean实体类 二.返回map集合 三.返回String[] 四.List<Object> 五.Pair.Triple 5.1 org.apache.commons ...

  2. java 返回布尔值_如何使用Java方法返回的布尔值?

    我有一个方法,发送一堆字符到另一个方法,如果某些字符存在,将返回true或false.一旦这个方法评估所有的字符,并为每个字符返回true或false,我如何在另一个方法中使用这些true或false ...

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

    Java中如果需要返回多个值怎么办 首先我们明确一下:java方法的返回值只有一个,但是返回值的类型不限 有一种编程语言可以返回多个值 Python,实例如下:  运行结果如下: [whuang@hu ...

  4. java中如何返回四维数组_如何从Java中的方法返回数组?

    我们可以从Java中的方法返回Java中的数组.在这里,我们有一个createArray()方法,通过从用户那里获取值来动态创建一个数组并返回创建的数组. 示例import java.util.Arr ...

  5. 方法返回多个值,使用Pair,Triple

    一个方法返回多个值,可以放在bean,或者map里面,但是我们只用一次,这样太麻烦,所以我们使用commons-lang3 的工具类,返回2个值用Pair,3个值用Triple Pair<Int ...

  6. 【工作记录】java方法返回多个值(用法思考、比较)

    用java写业务逻辑的时候,有时候一个方法可能需要返回多个出参,当中可能有List,String,Map等不同类型的数据结构,针对这种情况,我的解决策略一般是使用Map的形式来解决,具体分析请浏览下文 ...

  7. java泛型关于方法返回值前面的T是什么?

    public <T> Test<String,T> setCacheObject(String key,T value){return null; } 前面的T的声明,跟类后面 ...

  8. Java数组作为方法返回值

    // 数组作为方法返回值 一个方法可以有0.1.多个参数:但是只能有0或者1个返回值. 如果希望一个方法当中产生了多个结果数据进行返回, 使用一个数组作为返回值类型即可. 任何数据类型都能作为方法的参 ...

  9. c# out关键字 vb_C# 关于out关键字的用法(一个方法返回多个值的问题)

    通常一个方法只能返回一个值,但是如果在某些时候,我们想要返回多个值,例如某个方法将一个浮点数分割成一个整数和一个小数返回去.这个时候我们就要用到out关键字. 如果用ref也可以解决,但是用ref需要 ...

最新文章

  1. 皮一皮:论智能酒店的高等级提示...
  2. EXCEL教程,包你一学就会
  3. 生产环境下,oracle不同用户间的数据迁移。第一部分
  4. python中lt方法_Python的富比较方法__lt__、__gt__之间的关联关系分析
  5. Android -- 贝塞尔二阶实现饿了么加入购物车效果
  6. SAP CRM Opportunity订单的文档流Document Flow的一些变体variant
  7. 一个想法:成立草根技术联盟对开发人员进行技术定级解决企业员工招聘难问题!...
  8. python 网格线_Python版简单网格策略(教学)
  9. html的id不能有.吗,html – 哪些DOM元素不能接受id?
  10. dsh批量管理linux服务器
  11. linux作为生产力工具_适用于Linux的顶级音乐播放器,可保护隐私的社交媒体替代品,打印技巧,生产力工具等
  12. HD Tune Pro: WDC WD1600AAJS-00B8D 160g inMyRitMachi
  13. WPS Excel 模板设置与生成
  14. BroadcastReceiver生命周期探讨
  15. 解决Windows下“fatal: unable to checkout working tree, warning: Clone succeeded, but checkout failed.”
  16. 最好最常用的国外邮箱推荐!注册非常简单!
  17. 解决:linux启动Redis报Failed to search for file:Cannot prepare internal mirrorlist: No URLs in mirrorlist
  18. [洛谷] P2357 守墓人
  19. 暑假总结--新学期计划
  20. 飞猪未来景区多地智慧亮相 春节出游目的地马上安排

热门文章

  1. 一个关于python装饰器参数的问题
  2. HTML 4.01 规定了三种文档类型
  3. WinForm - 两个窗体之间的方法调用
  4. iOS 学习之NSPredicate
  5. 模糊理论在机器人传感器中的应用_智能家电中的传感器应用大全
  6. 【20171025早】alert(1) to win 练习
  7. ajax servlet增删改查,Servlet ajax 文件上传和JDBC+Servler用户表增删改查
  8. MyEclipse6.0 安装axis2插件, 调用加密的SAP webservice
  9. down.php无法打开,php下载文件 图片不能打开,该怎么解决
  10. 远程修改linux文件内容,用VS Code连接远程Linux服务器实时修改代码