当前位置:首页 > 开发 > 编程语言 > Java > 正文

Java 基础类型范围

发表于: 2011-05-03   作者:crabdave   来源:转载   浏览次数:
摘要:    Java 基础类型范围     import java.util.Set; import java.util.TreeSet; public class FoundationalTypes { private static int index=0; private static Set set=new TreeSet();

 

 Java 基础类型范围

 

 

import java.util.Set;
import java.util.TreeSet;

public class FoundationalTypes {
	
	private static int index=0;
	private static Set set=new TreeSet();
	
	/**
	 * The infomation of types will be printed
	 * @param className
	 * @throws InstantiationException
	 * @throws IllegalAccessException
	 * @throws ClassNotFoundException
	 * @throws SecurityException
	 * @throws NoSuchFieldException
	 */
	private void printInfo(String className) 
			throws InstantiationException, IllegalAccessException, ClassNotFoundException, SecurityException, NoSuchFieldException{
		
		Class c=Class.forName(className); 
		
		String MIN_VALUE="";
		String MAX_VALUE="";
		if("java.lang.Character".equals(className)){
			 MIN_VALUE=(int)(java.lang.Character)c.getField("MIN_VALUE").get(c)+"";
			 MAX_VALUE=(int)(java.lang.Character)c.getField("MAX_VALUE").get(c)+"";
		}else{
			 MIN_VALUE=(c.getField("MIN_VALUE").get(c)).toString();
			 MAX_VALUE=(c.getField("MAX_VALUE").get(c)).toString();
		}
		System.out.println((++index)+"、基本类型:"+c.getField("TYPE").get(c)+" 二进制位数:"+c.getField("SIZE").get(c));
		System.out.println((++index)+"、包装类:"+c.getName());
		System.out.println((++index)+"、最小值(MIN_VALUE):"+MIN_VALUE);
		System.out.println((++index)+"、最大值(MAX_VALUE):"+MAX_VALUE);
		System.out.println();
		
		int k= Integer.valueOf(c.getField("SIZE").get(c).toString());
		
		set.add((k<10?"0"+k:k)+":"+c.getName());
	}
	
	/**
	 * running
	 * @param args
	 */
	public static void main(String[] args) {
		try {
			String[] types={
					"java.lang.Long"
					,"java.lang.Double"
					,"java.lang.Integer"
					,"java.lang.Float"
					,"java.lang.Character"
					,"java.lang.Short"
					,"java.lang.Byte"
//				,"java.lang.Boolean"
			};
			
			for(String name : types){
				new FoundationalTypes().printInfo(name);
			}
			StringBuffer starts=new StringBuffer(" \t\t*");
			System.out.println("08:java.lang.Boolean"+starts);
			
			for(Object obj:set){
				starts.append("*");
				System.out.println(obj.toString()+starts);
			}
		} catch (SecurityException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (InstantiationException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IllegalAccessException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (NoSuchFieldException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

 

运行结果为:

 

1、基本类型:long 二进制位数:64
2、包装类:java.lang.Long
3、最小值(MIN_VALUE):-9223372036854775808
4、最大值(MAX_VALUE):9223372036854775807

5、基本类型:double 二进制位数:64
6、包装类:java.lang.Double
7、最小值(MIN_VALUE):4.9E-324
8、最大值(MAX_VALUE):1.7976931348623157E308

9、基本类型:int 二进制位数:32
10、包装类:java.lang.Integer
11、最小值(MIN_VALUE):-2147483648
12、最大值(MAX_VALUE):2147483647

13、基本类型:float 二进制位数:32
14、包装类:java.lang.Float
15、最小值(MIN_VALUE):1.4E-45
16、最大值(MAX_VALUE):3.4028235E38

17、基本类型:char 二进制位数:16
18、包装类:java.lang.Character
19、最小值(MIN_VALUE):0
20、最大值(MAX_VALUE):65535

21、基本类型:short 二进制位数:16
22、包装类:java.lang.Short
23、最小值(MIN_VALUE):-32768
24、最大值(MAX_VALUE):32767

25、基本类型:byte 二进制位数:8
26、包装类:java.lang.Byte
27、最小值(MIN_VALUE):-128
28、最大值(MAX_VALUE):127

 

08:java.lang.Boolean           *
08:java.lang.Byte                 **
16:java.lang.Character        ***
16:java.lang.Short               ****
32:java.lang.Float                *****
32:java.lang.Integer            ******
64:java.lang.Double             *******
64:java.lang.Long                ********

 

Java 基础类型范围

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
java中的类型概念名的说法不一、让我很是迷茫,我个人的理解整理,如有错误还请高人指点,! 一、Jav
这次主要学习java是如何在运行时识别对象和类的信息的。主要包括了两种方式:①RTTI(Run-Time Type
Java基础-数据类型 数据类型 关键字 字节 比特数 取值范围 缺省值 布尔型 boolean 1 8 true,false f
public class Test { /** * @param args */ public static void main(String[] args) { String str =
public class Test { /** * @param args */ public static void main(String[] args) { String str =
public class Test { /** * @param args */ public static void main(String[] args) { String str =
1、变量 三要素: 数据类型 变量名 变量值 首先,让我们来看看变量命名的规则 开头 字母、下划线、
一,数据类型 基本类型共有八种,它们分别都有相对应的包装类。 1、boolean:数据值只有true或false
正常转换 在程序运行时,经常需要将一种数值类型转换为另一种数值类型。附件中的图给出了数值类型之
一,标识符: 定义java对包,类,方法,参数和变量等要素命名时使用的字符序列称为标示符。 ①命名
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号