java 返回数据的类型提升
2011-07-22 12:51
344 查看
今天写了个随机数获取的工具类,因为需要 int 和 float 两种类型的数据,所以写了两个方法,代码如下:
很奇怪,两个方法的函数体完全一样的!只有函数声明上的返回类型是不一样的。
写个测试函数查看两个方法的执行结果:
Console:
返回的数据类型自动转变了!~~~~
原因不是很清楚,应该是两个方法在返回时根据其声明对数据进行了类型自动转变。
/** * 获取指定范围内的数据,int * * @param min 最小值 * @param max 最大值 * @return * @author "BK_DeathKninght" * @date 2011-7-22 */ public static int getInt(int min,int max) { Random r = new Random(); return (r.nextInt(max)%(max - min + 1) + min); } /** * 获取指定范围内的数据,float * * @param min 最小值 * @param max 最大值 * @return * @author "BK_DeathKninght" * @date 2011-7-22 */ public static float getFloat(int min,int max) { Random r = new Random(); //min-max return (r.nextInt(max)%(max - min + 1) + min); }
很奇怪,两个方法的函数体完全一样的!只有函数声明上的返回类型是不一样的。
写个测试函数查看两个方法的执行结果:
public static void main(String[] args) { int index = 0; while(index++ <= 10) { System.out.println("" + index + " --> " + MyRandom.getInt(1,100)); System.err.println("" + index + " --> " + MyRandom.getFloat(1,100)); } }
Console:
返回的数据类型自动转变了!~~~~
原因不是很清楚,应该是两个方法在返回时根据其声明对数据进行了类型自动转变。
相关文章推荐
- java 基本数据类型及自动类型提升
- 用类名做方法的返回值类型 在学习Java的初始阶段,很多同学使用基本数据类型定义变量和引用类型定义变量以及使用类名做方法的返回值类型常常不知所以。今天我以自己的解读方式和个人的理解作一个简单的解释,和
- OpenJDK源码研究笔记(五)-缓存Integer等类型的频繁使用的数据和对象,大幅度提升性能(一道经典的Java笔试题)
- Java为什么两个值相等的对象==比较返回false而两个值相等的不同类型的的基本数据类型返回true
- 【Java基础之数据类型转换】数据类型自动转换和强制转换、及相关常见面试题(如return (short)x / y* 2; 的返回类型)
- Java中的基本数据类型类型提升现象
- java数据类型的自动提升
- Java基本数据类型——Java基本数据类型汇总、自动类型转换(指导图)、强制类型转型乱码问题、运算时类型提升容易犯的错误常见问题汇总
- java 基本数据类型及自动类型提升
- OpenJDK源码研究笔记(五)-缓存Integer等类型的频繁使用的数据和对象,大幅度提升性能(一道经典的Java笔试题)
- Java_HttpClient获取返回类型为JSON或XML的数据
- Java调用C代码时传入以及返回基本数据类型
- Java 数据类型自动提升
- java学习之旅10--基本数据类型自动转换_强制转型_类型提升问题
- java 直接返回Date类型数据给前端,前端的处理方法
- OpenJDK源码研究笔记(五)-缓存Integer等类型的频繁使用的数据和对象,大幅度提升性能(一道经典的Java笔试题)
- java 基本数据类型及自动类型提升
- java,返回的json数据中Date类型格式的转换
- Java表达式的数据类型自动提升问题
- OpenJDK源码研究笔记(五)-缓存Integer等类型的频繁使用的数据和对象,大幅度提升性能(一道经典的Java笔试题)