06.java数据类型详解
2017-05-22 21:48
169 查看
一、浮点型(float、double)
1.浮点型指的是小数,在java语言中,每一个小数常量类型都为double2.如果要为float变量赋值,就必须进行强制转换
example:float x=10.02F; or float x=(float)10.02;
3.浮点数相乘的BUG及解决方法
(1).BUG重现
example:double x = 10.02;
System.out.println(x*x);
==>100.40039999999
float x = 10.02F;
System.out.println(x*x);
==>100.400406
(2).解决办法
使用BigDecimal完成
example:double x = 10.02;
BigDecimal y = new BigDecimal(Double.toString(x));
System.out.println(y.multiply(y));
==> 100.4004
BigDecimal用法参考 http://blog.csdn.net/lisongjia123/article/details/51232657
二、字符型(char)
1.在java重使用单引号“'”定义的内容就表示一个字符,如'A'2.int和java间的转换
(1).大写字母范围:65-90
(2).小写字母范围:97-122
3.java定义字符时使用的是UNICODE编码,它是一种使用十六进制定义的编码,可以表示出任意的文字
4.char除了可以定义单个字符外,也存在转义字符
三、字符串
1.所有的数据类型遇见String之后都会自动向String转型,不管是基本数据类型还是引用数据类型2.字符串常量一旦声明不可改变,字符串对象可以改变,但是改变的是其内存地址的指向
3.String类使用了final定义,不可以被其他类继承
4.String和StringBuffer
(1).String和StringBuffer的区别
a.String的内容不可改变,而StringBuffer的内容可以改变。如果需要对字符串数据进行频繁修改,只能使用StringBuffer类
b.在String类中使用“+”进行数据的连接,在StringBuffer类中使用append()方法进行数据的连接
c.StringBuffer类除了可以改变内容,还定义了许多String类中所没有的方法。
(2).StringBuffer常用方法
a.字符串反转
public StringBuffer bufferReverse(String str){
StringBuffer buf=new StringBuffer(str);
return buf.reverse();
}
b.替换指定范围内的数据
/*
* start:开始位置
* end:结束位置
* replaceStr:替换文本
*
*/
public StringBuffer bufferReplace(int start,int end,String str,String replaceStr){
StringBuffer buf=new StringBuffer(str);
return buf.replace(start,end,replaceStr);
}
c.在指定位置插入数据
/*
* place:插入位置
* insertStr:插入文本
*
*/
public StringBuffer bufferInsert(int place,String str,String insertStr){
StringBuffer buf=new StringBuffer(str);
return buf.insert(place,insertStr);
}
(3).String转StringBuffer的方法
a.利用StringBuffer类的构造方法
public StringBuffer stringToBuffer(String str){
StringBuffer buf=new StringBuffer(str);
return buf;
}
b.利用StringBuffer类的append()方法
public StringBuffer stringToBuffer(String str){
StringBuffer buf=new StringBuffer();
buf.append(str);
return buf;
}
(4).StringBuffer转String的方法
public StringBuffer bufferToString(StringBuffer buf){
return buf.toString();
}
相关文章推荐
- Java程序员从笨鸟到菜鸟之(四十四)细谈struts2(七)数据类型转换详解
- Java基础-Java中的简单数据类型详解
- java的栈与堆(基本数据类型与包装数据类型)详解
- java基础06 基本数据类型对象包装类
- java(1)-java的数据转换类型详解 -万万没想到系列(2)
- java数据类型转换详解
- Java数据类型详解
- Java学习系列(二)Java注释、标识符、基本数据类型及其转换易错点详解
- Java八大基本数据类型-详解
- Java基本数据类型详解
- JAVA笔记一(01-06 java的基本概念和数据类型)
- java的栈与堆(基本数据类型与包装数据类型)详解
- java byte数据类型详解
- java数据类型转换详解
- java基本数据类型与封装类型详解(int和Integer区别)
- java数据类型转换详解
- Java程序员从笨鸟到菜鸟之(四十四)细谈struts2(七)数据类型转换详解
- java基本数据类型与封装类型详解(int和Integer区别)
- 详解Java中的String数据类型
- java基本数据类型详解