本文介绍三个方法,使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(略)
}

java如何从方法返回多个值的更多相关文章

  1. java 一个函数EnumMap返回多个值

    java 一个函数如何返回多个值   在开发过程中,经常会有这种情况,就是一个函数需要返回多个值,这是一个问题!! 网上这个问题的解决方法: 1.使用map返回值:这个方法问题是,你并不知道如何返回值 ...

  2. java 反射获取方法返回值类型

    //ProceedingJoinPoint pjp //获取方法返回值类型 Object[] args = pjp.getArgs(); Class<?>[] paramsCls = ne ...

  3. java 方法返回多个值

    package java03; /* * 一个方法可以有0,1或者多个参数,但是返回值只能有0或者1个返回值,不能有多个返回值 * 但是如果希望有多个返回值,应该怎么办? * 答:使用数组作为返回值类 ...

  4. java 一个函数如何返回多个值

    在开发过程中,经常会有这种情况,就是一个函数需要返回多个值,这是一个问题!! 网上这个问题的解决方法: 1.使用map返回值:这个方法问题是,你并不知道如何返回值的key是什么,只能通过doc或者通过 ...

  5. C#一个方法返回多个值

    示例代码: static void Main(string[] args) { //声明 int value; string strOutValue; //调用函数 //函数的参数有两个返回的值 Re ...

  6. ADO.NET笔记——利用Command对象的ExecuteScalar()方法返回一个数据值

    相关知识: 有些SQL操作,例如SUM,只会从数据库返回一个数据值,而不是多行数据 尽管也可以使用ExecuteReader()返回一个DataReader对象,代表该数据值,但是使用Command对 ...

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

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

  8. 同样的输入,为什么Objects.hash()方法返回的hash值每次不一样?

    背景 开发过程中发现一个问题,项目中用Set保存AopMethod对象用于去重,但是发现即使往set中添加相同内容的对象,每次也能够添加成功. AopMethod类的部分代码如下: public cl ...

  9. 083、Java数组之方法返回数组

    01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...

随机推荐

  1. USB HID介绍

    HID是一种USB通信协议,无需安装驱动就能进行交互,在学习HID之前,先来复习一下USB协议的相关内容. USB设备描述符-概述 当插入USB设备后,主机会向设备请求各种描述符来识别设备.那什么是设 ...

  2. Java初转型-jdk安装和配置

    Java 开发环境配置 > * 下载JDK> * 配置环境变量> * 测试JDK是否安装成功> * 使用 Eclipse 运行第一个 Java 程序 下载JDK 首先我们需要下 ...

  3. LinkButton( 按钮)

    一. 加载方式 //class 加载方式<a href="###" class="easyui-linkbutton">按钮</a> / ...

  4. OD: Shellcode Encoding

    Shellcode 受到的限制 1. 大多数情况下 shellcode 中不允许出现 0x00 截断符,这个可以通过特殊指令来做到. 2. 有时候 shellcode 必须为可见的 ASCII 字符或 ...

  5. javascript获取标签样式(获取背景为例)

    function getStyle(el){ if(window.getComputedStyle){ return window.getComputedStyle(el,null); } retur ...

  6. HTML与CSS入门——第五章 使用文本块和列表

    知识点: 1.在页面上对齐文本的方法 2.三种HTML列表的使用方法 3.在列表中放置列表的方法 5.1 在页面上对齐文本: 父元素内子元素文本的居中:在控制父元素的text-align:center ...

  7. 关于Discuz!nt论坛编辑器图片上传bug,flash域的问题

    正在整discuz!nt,现在没有什么人弄了把? 上个星期突然来了个bug,搞死我了,论坛图片不能上传,上传卡在100%没反应了,于是我发现ajax发送到AttachUpload.cs时queryst ...

  8. 纯js滑动脚本

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. js_day1

    1)在js写<br>是要"<br>" 2)一些函数a.length,math.random()(1~0),math.floor()(2.3,2.5--> ...

  10. Android性能优化学习

    工作以来,越来越觉得性能优化的重要性,从技术角度,它甚至成了决定一个app成败的最关键因素.因此,特地花时间去学习专研性能优化的方法. 学习性能优化最便捷的方式便是研读别人有关性能优化的博客,然而网上 ...