1. Java一个方法返回两个不同的类型值怎么处理
一个函数需要返回两个值的话 可以根据你自己的需求决定是用强类型还是弱类型
强类型的话 比较安全 但是写起来比较麻烦 代码也不是很美观
弱类型的话 代码比较优美一点 但是相对的 需要对类型判断好
//强
classData{
ValueAa;
ValueBb;
}
publicDatafunction(){
...
Datadata=newData();
data.a=xxx;
data.b=xxx;
returndata;
}
//弱
publicObject[]function(){
ValueAa;
ValueBb;
...
Object[]objs=newObject[]{a,b};
returnobjs;
}
2. 一个方法可以有多少个参数多少个返回值 Java
Java一个方法可以有0个或1个返回值。
函数的返回值类型是在定义函数时指定的。return 语句中表达式的类型应与定义函数时指定的返回值类型一致。
如果不一致,则以函数定义时的返回值类型为准,对 return 语句中表达式的类型自动进行转换,然后再将它返回给主调函数使用。
(2)同一个方法怎么有多种返回值类型扩展阅读:
事实上在执行 return 语句时系统是在内部自动创建了一个临时变量,然后将 return 要返回的那个值赋给这个临时变量。
所以当被调函数运行结束后 return 后面的返回值真的就被释放掉了,最后是通过这个临时变量将值返回给主调函数的。
3. 一个方法里为什么会有两个return返回值
有返回值的方法,必须返回值,如果没有什么值要返回,那就return null return * 是方法返回值,而this.* = *是set方法,这两者没什么关系。
软件(software)是一系列按照特定顺序组织的计算机数据和指令的集合。一般来说,计算机软件被划分为编程语言、系统软件、应用软件和介于这两者之间的中间件。其中系统软件为计算机使用提供最基本的功能,但是并不针对某一特定应用领域。而应用软件则恰好相反,不同的应用软件根据用户和所服务的领域提供不同的功能。软件并不只是包括可以在计算机上运行的计算机程序,与这些计算机程序相关的文档,一般也被认为是软件的一部分。简单的说软件就是程序加文档的集合体。软件被应用于世界的各个领域,对人们的生活和工作都产生了深远的影响。
4. c语言中调用函数如何返回多个值
1、通过使用指针,在函数调用时,传递带有地址的参数,并使用指针更改其值;这样,修改后的值就会变成原始参数。
5. C语言中函数有多个返回值的实现
第一种:以数组的形式返回。返回值是同种数据类型
int[] getData(参数)
{
函数体
}
第二种:以结构体形式返回,返回值可以是不同的数据类型
struct ABC{
char name[20];
int n;
};
struct ABC myfun(void){
struct ABC x={"Lining",99};//声明一个结构体局部变量x并初始化
return x;//返回局部变量结构体x
}
6. 写个方法,怎样根据参数让其具有不同的返回值类型
方法名必须相同
方法参数类型、个数至少有一项不同
方法的返回类型可以不相同
方法的修饰符可以不相同
例:
public void test(){
};
public int test(){
return 0;
};
public String test(){
return "";
};
public void test(int i){
};
7. 怎样让函数返回两个不同类型的值
20080619:
我说的就是c。
已给你发到站内信。
20080618:
有两种方法:
第一种,通过返回值返回(return)。让你的函数返回一个结构体,你的整数和指针作为结构体的成员变量。
第二种,通过参数返回。因为参数是值传递,所以你的整数参数要作为int*指针,你的指针则要作为指针的指针。
同样第二种方式你的两个参数也可以放到一个结构体里,作为参数传出,同样结构体要作为指针传入。
8. java 如何能在一个方法中返回多个值
最开始说一下我使用的解决办法:Pair 和 Triple
偶然看到这个问题,浏览量也很大,还是写一下我认为最好的办法吧,跟大家交流一下。
说一下前面的人答的方案,都可以解决问题,但是觉得不太好。您要是说 可以解决问题就行,那我无话可说。写代码如果只是为了完成任务,不考虑实现是否优雅 和咸鱼有什么区别呢。
数组明显不合适,数组适合放同一类型的数据,当然,你可以使用List<Object>,用Object 放结果,调用方需要知道Object的实际类型并做强制转换,不够优雅,差评
Map<String,Object> 是一种能解决问题的做法,使用Object 来放结果也存在调用方需要知道其实际类型并做强转的问题,用key 作区分,方法调用者需要知道方法内部的key ,即使使用全局变量做key 也不够优雅
自定义对象,新建一个类,例如 public class DoubleResult<A, B>{getter; allArgsConstructor;}、public class TripleResult<A, B, C>{getter; allArgsConstructor;
} ,效果棒棒的
接下来要说的 Pair 和Triple 就是上面第三种方案的实现。org.apache.commons.lang3.tuple.Pair,org.apache.commons.lang3.tuple.Triple 是commons-lang包里的两种元组类型。Pair<L,R>可以存两个数据,Triple<L,M,R> 可以存三个,再多 那么考虑一下你的方法是否可以拆一下。
简单说一下他们的用法吧。
Pair 初始化:
Pair.of(Lleft,Rright);
例:Pair.of("a","b");
或:
Pair<Object,Object>pair=newPair<Object,Object>(){
@Override
publicObjectgetLeft(){
returnnull;
}
@Override
publicObjectgetRight(){
returnnull;
}
@Override
publicObjectsetValue(Objectvalue){
returnnull;
}
};
Triple 初始化:
Triple.of(Lleft,Mmiddle,Rright)
或:
Triple<Object,Object,Object>triple=newTriple<Object,Object,Object>(){
@Override
publicObjectgetLeft(){
returnnull;
}
@Override
publicObjectgetMiddle(){
returnnull;
}
@Override
publicObjectgetRight(){
returnnull;
}
};
Pair 获取内容:
pair.getKey();
pair.getValue();
Triple 获取内容:
triple.getLeft();
triple.getMiddle();
triple.getRight();
另外org.apache.commons.lang3.tuple 包下还有ImmutablePair、ImmutableTriple、MutablePair、MutableTriple 分别对应两种结构的不可变和可变类型,大家可以自行探索。
9. C++,可否一个函数返回多种类型的值
不能只有一个函数却有多个返回类型,但是你可以重载多个不同返回类型的同名函数
10. iOS用三种途径实现一方法有多个返回值
把多个返回值放到List 返回出去 直接返回多个值的 数组 直接返回一个对象,对象里面自定义多个返回值存储。