Java中return可以返回两个不同类型的值吗

//方法:一次性返回两种类型的数据,结合了Map和list
    public static List<Map> returnMapList(){
        Map<String,Integer> map = new HashMap<>();
        map.put("age",1);
        map.put("high",30);
        Map<String,int[]> map1 = new HashMap<>();
        map1.put("array", new int[]{1, 2});
        List<Map> listMap = new ArrayList<Map>();
        listMap.add(map);
        listMap.add(map1);
        return listMap;
    }
//测试代码
    public static void main(String[] args){
        //返回list
        List<int[]> list1 = returnList();
        System.out.println(Arrays.toString(list1.get(0)) + Arrays.toString(list1.get(1)) + Arrays.toString(list1.get(2)) + "\nreturnlist结束\n");
 
        //返回Map,一个Map只能有一种数据类型
        Map<String,Integer> mapTest = returnMap();
        System.out.println("age = " + mapTest.get("age") +",   high = " + mapTest.get("high") +  "\nreturnMap结束\n");
 
        //一次性返回两种类型的数据,结合了Map和list
        List<Map> list2 = returnMapList();
        System.out.println(list2.get(0)  +" , " + list2.get(1)  + "\nreturnMapList结束");//list2.get(1)是数组的地址
        System.out.print("调用返回的int和int[]:");
        Map map0 = list2.get(0);
        Map map1 = list2.get(1);
        System.out.println( "age = " + map0.get("age") );
        System.out.println("array = " + Arrays.toString((int[]) map1.get("array")));
//      System.out.println(Arrays.toString((int[]) list2.get(1).get("array")));   //调用过程也可以这样写
    }

帮助博主链接

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值