java如何使用函数返回多个函数值?求高手指导啊 ,求举个例子感激不尽

解决方案 »

  1.   

    返回一个数组或者一个Collection
      

  2.   

    如果是返回若干个同一类的信息,显然是集合。
    如果是返回若干个不同的属性,显然是返回一个自定义对象,或者偷懒用Map
      

  3.   

    java 一个函数只能返回一个对象
    但是都有很多解决的方法
    方法一、封装一个含有多个你想返回的值的类,然后返回它的对象
    方法二、使用现成封装好的类如List或者使用数组保存想返回的值,并返回它的对象
    方法三、在函数内部改变你想要改变的值已达到目的
    方法四、使用按址传递的方法传入参数、在函数内部处理更改传入的那个参数、则函数外同样地址的变量的值也会改变、也相当于变相的一个返回一个参数ps:java 对按址传递明确硬性规定:
    按值传递的数据类型:八种基本数据类型和String(这样理解可以,但是事实上String也是传递的地址,只是string对象和其他对象是不同的,string对象是不能被改变的,内容改变就会产生新对象。那么StringBuffer就可以了,但只是改变其内容。不能改变外部变量所指向的内存地址。关于String的特殊性见本博客的String类深入解析)。 
    按址传递的数据类型:除String以外的所有复合数据类型,包括数组、类和接口 
      

  4.   

    1.返回一个集合Map,List或者返回二个数据Object[],
    2.采用JAVA的泛型,这样就灵活的实现了返回不同类型结果的方法了
    public class Test<T>
    {
        
        public T get()//实例方法
        {
            T t = null;
            return t;
        };
        
    }class TestA
    {
        public <T> T get()//静态方法
        {
            T t = null;
            return t;
        }
    }
      

  5.   

    1.返回一个集合Map,List或者返回数组数据 Object[],
    2.采用JAVA的泛型,这样就灵活的实现了返回不同类型结果的方法了import java.util.Map;public class Test<T>
    {
        
        public T get()//实例方法
        {
            T t = null;
            return t;
        };
        
        public <K> K getKey()//实例方法
        {
            K k = null;
            return k;
        }
        
        public static <V> V getValue()//静态方法
        {
            V v = null;
            return v;
        }
        
        public static void main(String[] args)
        {
            Test<String> test = new Test<String>();
            
            String stringValue =test.get();
            
            Integer intValue =test.<Integer>getKey();
            
            Map mapvalue =Test.<Map>getValue();
        }
    }