java的基本数据类型

<!--[if !supportLists]-->一、<!--[endif]-->java的数据类型:

Java所有的数值类型都是有符号的【有正负之分,最高位表示正负】

基本类型:

类型

称呼

值域

表示范围

byte

字节型

8bit

-128~127

扫描二维码关注公众号,回复: 599292 查看本文章

short

短整型

16bit

-32768~32767

int

整型

32bit

-21亿~21亿

long

长整型

64bit

-900亿亿~900亿亿

float

单精度浮点型

32bit

保留8位有效数字,最后一位不精确

double

双精度浮点型

64bit

保留16位有效数字,最后一位不精确

char

字符型

16bit

0~65535

boolean

布尔型

1bit

只有ture和false两个结果

 

 

关于数据值域的基础知识说明:

<!--[if !supportLists]-->1.<!--[endif]-->一个bit是计算机可以存储的最小数据单位,即1位,只可能是0或1.

 

<!--[if !supportLists]-->2.<!--[endif]-->一个byte由八个bit组成,即八位,2的8次方,可以表达256个整数值,又由于byte在java中是有符号的,所有范围为-128~127

 

<!--[if !supportLists]-->3.<!--[endif]-->char在java中由两个byte组成,用来表示一个字符,即Unicode编码。char类型在进行数学计算的时候,采用字符的Unicode编码来计算。

 

<!--[if !supportLists]-->4.<!--[endif]-->int和float在java中由四个byte组成。

 

<!--[if !supportLists]-->5.<!--[endif]-->每个long或double型变量占用八个byte的存储空间。

 

<!--[if !supportLists]-->6.<!--[endif]--> 1KB = 1024b   1M = 1024Kb  1G =1024M

 

在具体的应用中,根据变量所要赋值的范围,选择合适的类型:例如我们要定义一个年龄的变量,年龄的范围肯定是在0~127之间的,所有定义为byte类型,没必要写成int age。

<!--[if !supportLists]-->二、<!--[endif]-->数据类型的定义

   程序中的整数默认都是int型,即在方法调用直接传入的一个具体的整数值,默认都是int型。一个整数值可直接根据其字面赋值给int或变量,或值域大与int型变量的long、float或double。常用定义格式如下:

 

int a = 100;
	int b = a;
	// 定义一个浮点类型
	float c = 1000;
	// 十六进制的int格式定义:以0x开头
	int d = 0x32;
	// 八进制的int格式定义:以0开头
	int e = 077;
	// 定义一个byte类型
	byte f = 12;
	// 定义一个boolean型变量,初值为true;
	boolean result = true;

 

整形的转型:小范围的整数类型值可通过赋值运算直接转换为大范围的原始类型:byte→char→int→long→float→double是可以自动转换的;反之则需要强制转换,代码如下:

 

byte a = 123;
int t = a ;//自动转换
a  = (byte) t ;//强制转换

 如果是大范围类数据强制转换为小范围数据时,如下

public static void  mian (String[ ] args){
int i = 1024;
byte b = (byte) i;  //强制转换
}

<!--[if !supportLists]-->三、<!--[endif]-->使用String

String是java中的一个类,而不是一种基本数据类型,因为它有自己的方法和属性。

字符串可以直接赋值的方法创建:String str = “直接赋值创建的String”  通过String类可以创建String对象,代码如下。

 

 

 

public  static  void  main (String [ ] args){
    String  s  = “字符串1” ;
    String  s2 =new String (“新的字符串”);
    s =s + s2 ;

 String是一个类,String对象肯定就是引用类型,但它却是跟原始类型一样,遵守值传递的规则:这是因为String类在JVM中特别设计过,因为它的用量特别大,为了提高效率,String通过值传递方式来使用。String是最为常用的一种数据类型,String类中也提供了非常多的可直接调用的方法:

 

 

 

 

 

猜你喜欢

转载自changming0810.iteye.com/blog/2315816