---恢复内容开始---
java基本数据类型总结
Java数据类型总结
Java中的数据类型分为两大类:内置数据类型 对象类型(引用数据类型)
一、内置数据类型
1).Java中的原始类型有八种,即八大基本类型。具体如下:
类型 称呼 值域 表示范围
byte 字节型 8 bits -128~127
int 整型 32 bits -2^31~(2^31-1)
short 短整型 16 bits -2^15~(2^15-1)
long 长整型 64 bits -2^63~(2^63-1)
char 字符型 16 bits(Unicode) 0~65535
float 浮点型 32 bits 直接赋值时必须在数字后加上f或F
double 双精度 64 bits 赋值时可以加d或D也可以不加
boolean 布尔型 true/false 只有“真”或“假”两种结果
2)补充:char(字符型)中的一个字母或一个汉字对应一个整数,在ASCII中它的范围为0~255。
3)其他:a. 定义一个byte变量,如: byte b = -256;
由于-256超出了字节型的范围,所以要使程序不报错,可有如下几种解决方法:
1.更改变量的数据类型(如:将byte改为int);
2.更改赋给变量的数值,使其包括在变量的数据类型的值域内;
3.进行强制转换: 如: byte b=(byte)-256;
进行强制转换后,虽然程序不再报错,但是有可能会使原值的精度受到影响,即出现“溢出”现象。
b.自动转换:小范围的整数类型值可通过赋值运算直接转换为大范围的原始类型值。从byte->short->char->int->long->float->double可以进行自动转换;反之,则进行强制转换。(如:假设i为int型,b为byte型,可有:int i=b;假设f为float型,要把它赋值给long型的变量,可有:long l = (long)f)
c.定义一个浮点型数时,记得要在数值后面加上“f”或“F”。(如:float f = 10000.0f;)
d.若定义char c=’a’;定义int n=c;则输出的n值为“a”的ASCII值,即97。
二、对象类型
1).对象类型(引用类型或者类类型)包括:
类,接口,抽象类,数组
2)String在Java中是一个类,由class定义的类。
A. String类中的一些常用方法(以下字符串均为str):
1.str.charAt(n):查找字符串第n个索引位置的字符,返回值类型为char。
2.str.contains(“a”):判断字符串中是否有子字符串“a”,返回值类型为boolean。
3.str.equals(str2):判断两个字符串(str和str2)是否相等,返回值类型为boolean。
4.str.indexOf(‘d’,n):从索引值为n的地方起开始向后查找,返回第一次出现‘d’的位置的索引值,返回值类型为int。
5.str.length():计算字符串的长度,结果的返回值类型为int。
6.str.split(“d”):以子字符串“d”为分割点,将字符串分为几部分,但不包括子字符串本身。exp:
String [] array = str.split("d");
for(int i=0;i
System.out.println(array[i]);
}
7.str.substring(“d”,”e”):取子字符串“d”和“e”之间的子字符串,但不包括“e”。exp://取字符串中第一个“d”和
最后一个“d”之间的字符串。
String str1 = str.substring(str.indexOf("d")+1,str.lastIndexOf("d"));
System.out.println("str1 = "+str1);
B.string类中我很不熟悉的一些方法
1. getBytes:使用平台的默认字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。返回值类型为
byte。
exp: String str=”ababababa”;
byte [] array=str.getBytes();
2.getChars: 将字符从此字符串复制到目标字符数组。返回值类型为void。
srcBegin - 字符串中要复制的第一个字符的索引。
srcEnd - 字符串中要复制的最后一个字符之后的索引。
dst - 目标数组。
dstBegin - 目标数组中的起始偏移量。
3.hashCode: 返回此字符串的哈希码(哈希码是虾米?)。
返回值类型为int。
4. intern : 返回字符串对象的规范化表示形式。
一个初始为空的字符串池,它由类 String 私有地维护。返回值类型为String。
exp: String str=”ababababa”;
String a=str.intern();
System.out.println(a);
输出的结果为:ababababa。
5. trim: 返回字符串的副本,忽略前导空白和尾部空白。返回值类型为String。
exp:给字符串“ defgb ”,则输出结果将为“defgb”。
类型转换
简单类型数据间的转换,有两种方式:自动转换和强制转换,通常发生在表达式中或方法的参数传递时。
自动转换
具体地讲,当一个较"小"数据与一个较"大"的数据一起运算时,系统将自动将"小"数据转换成"大"数据,再进行运算。而在方法调用时,实际参数较"小",而被调用的方法的形式参数数据又较"大"时 (若有匹配的,当然会直接调用匹配的方法),系统也将自动将"小"数据转换成"大"数据,再进行方法的调用,自然,对于多个同名的重载方法,会转换成最"接近"的"大"数据并进行调用。这些由"小"到"大"分别为 (byte,short,char)--int--long--float—double。这里我们所说的"大"与"小",并不是指占用字节的多少,而是指表示值的范围的大小。
接!
final关键字的用法