java基础知识总结(一)--数据类型

java一共有八种基本数据类型:

 

1.整型:

类型

长度

byte

1个字节

short

2

int

4

long

8

java中整型的范围与运行java的机器无关,这也解决了平台的移植性问题;Java没有任何无符号类型;

2.浮点类型

类型

长度

float

4

double

8

 

三种异常的浮点数:

1.正无穷大(1/0) Double.POSITIVE_INFINITY

2.负无穷大 (-1/0)   Double.NEGATIVE_INFINITY

3.不是数字0/0 负数开根号等:Double.NaN

 

判断是不是一个合法数 Double.isNaN(v),而不能用==

 

如果不允许有误差,则不能用浮点类型,因为计算机中用二进制来存储,无法准确表示十进制的数,例如1/10。

              double x=2.0;

        double y=1.1;

        System.out.println(x-y);

---》0.8999999999999999

3.char类型

表示单个字符,通常用来表示字符常量;

java中的 char 数据类型使用 Unicode 编码,占用两个字节内存。

 

package test;

public class Char {

      public static void main(String[] args) {

            char ch1 = 97;

            char ch2 'a';

            System.out.println("ch1=" ch1);

            System.out.println("ch2=" ch2);

      }

}

输出结果??

 

-》a

-》a

 

 

代码点是指与代码表中一个字符对应的代码值;

代码单元是指表示一个字符的连续空间;

java对字符unicode的实现是UTF-16+增补字符的形式实现的;基础类型用一个代码单元表示;特殊字符,用两个连续的代码单元表示;

 

 4.boolean类型

只有true跟false,不能跟int相互转换;

 

String类型
java中的string为不可变字符串;

例如string x="hello";
如何改变最后两位为p!;

X=X.substring(0,3)+"p!";
java中只能通过修改变量指向,来改变变量的值;这样修改跟直接修改所指的值效率哪个更高呢?修改会降低一部分效率,但是做到了字符串变量共享。共享所带来的高效率远高于拼接的消耗;

字符串常用方法
charat


数组类型:

初始化时,必须指定长度;数字类型数字初始化时,默认为0;布尔类型默认为false;
数组一旦创建就不能再改变其大小;
数组操作:
Arrays.Copyof
Arrays.Sort
Arrays.binarySearch(arr, 1)二分法查找
Arrays.fill(arr, 1)
大数值:
如果实际场景时比较大的数值,那么int long double等不能满足条件,只能使用java.math类中的大数值
bigInteger bigDecimal
通过valueof可用将普通基础类型转换为大数值类型:
bigInteger bInt=BigInteger.valueof(100);
注意大数值类型不支持+-等运算符,只能使用math类提供的方法;

原文地址:https://www.cnblogs.com/ykwang/p/14777396.html