Java方法返回值强制类型转换的问题,请高手解答。

来源:百度知道 编辑:UC知道 时间:2024/09/26 03:24:24
public class Return {
public static void main(String args[]){
byte b = 1;
double d = 3;
typeKind a = getType(b,d);
System.out.print(a);
}
static typeKind getType(byte b,double d){
return (int)b/d*10;
}
}

typeKind是什么类型?输出的结果又是什么?为什么?
-------------------------------------------------
注:typeKind是我设置的一个未知量,问它属于java基本类型(boolean,char,byte,short,int,long,float,double)中的哪一种.这个程序是不能运行,因为typeKind是未知的,问它属于基本类型中的哪一种。

注:typeKind是我设置的一个未知量,问它属于java基本类型(boolean,char,byte,short,int,long,float,double)中的哪一种.

注:typeKind是我设置的一个未知量,问它属于java基本类型(boolean,char,byte,short,int,long,float,double)中的哪一种.
希望大家能注意到我补充的内容,前面几个大哥的回答我觉得基本不对。

什么玩意啊。哪有上面typeKind类型啊
public class Return {
public static void main(String args[]){
byte b = 1;
double d = 3;
double a = getType(b,d);
System.out.print(a);
}
static double getType(byte b,double d){
return (int)b/d*10;
}
}
}
z这样的结果是:3.333333333333333
这个只把b强制转换成整形,即变成1然后做算法
1/3*10=3.333333333333333

你的程序有错误.不可能运行.看下面.

http://hi.baidu.com/aidirac/album/item/f088dc135a4ce71e5baf53ff.html

typeKind是什么类型 是什么类型我也没见过

我敢肯定输出的是0
因为int 型的1/3=0;

补充回答:
跟据你加的说明,typeKind用int类型,没测试,应该是这样,你去看下。。

你这段代码不完整
typeKind 应该是个类 你还应该有个类叫typeKind
正常情况下输出结果是把a的内存地址打印出来

不过你写的又不对
static typeKind getType(byte b,double d){
return (int)b/d*10;
} 这段
要求你返回一个typeKind类型的实例 你返回个int
这里就错了