理论基础
变量
- 变量(Variable)是在内存中动态存储值的地方。
- Java是一门静态语言,在使用一个变量前要求必须声明它的类型。
- 声明变量的过程就是申请内存的过程,JVM会根据数据类型来分配内存空间。
- 数据类型的分类:引用数据类型和内置数据类型。
数据类型
- 内置八种基本类型:六种数字类型(四种整数型、两种浮点型)、字符型、布尔型。
- byte、short、int、long、float、double、char、boolean
- 八种内置类型都有自己的包装类,分别是Byte、Short、Integer、Long、Float、Double、Character、Boolean
引用类型的变量
- 引用类型的变量都是某个类的对象或者数组,相当于指向内存中的一个指针;
- 所有引用类型如果不进行初始化赋值,默认值都是null;
- 引用类型包括类、接口和数组;
- 数组表示一组具有相同类型的数据;
代码实战
同时声明和赋值
int a = 1, b, c = 5; // 一次声明同一类型的几个变量并且给它赋初值
double pi = 3.14159; // 语法上类似于声明一个变量,只是没有new这个关键字
byte
- byte数据类型是8位的有符号整数;有符号指的是有正数和负数之分
- 最小值是-128(-2 ^7)、 最大值是127(2^7-1)、默认值是0
- byte类型用在大型数组中节约空间,主要代替整数,因为byte变量占用的空间只有int类型的四分之一
byte fool = 100;
byte bar = -50;
short 类型
- short数据类型是16位的有符号整数
- 最小值是-32768(-215)、最大值是32767(215 - 1)、默认值是0
- short数据类型也可以像byte那样节省空间。一个short变量是int型变量所占空间的二分之一
short numberOne = 100;
short numberTwo = -101;
int 类型
- int数据类型是32位的有符号整数
- 最大值231-1,最小值-231,默认值是0
int numberIntOne = 5000;
int numberIntTwo = -5001;
long 类型
- long数据类型是64位的有符号整数
- 最大值264-1,最小值-264,默认值是0L
- 这种类型主要使用在需要比较大整数的系统上
long numberLongOne = 80000L;
long numberLongTwo = -80001L;
float 类型
- float数据类型是单精度、32位的浮点数,默认值是0.0f
- float在储存大型浮点数组的时候可节省内存空间
- 浮点数不能用来表示精确的值,如货币
float numberFloatOne = 133.f;
float numberFloatTwo = -133.f;
double 类型
- double数据类型是双精度、64位的浮点数,默认值是0.0d
- 浮点数的默认类型为double类型
- double类型同样不能表示精确的值,如货币
double numberDoubleOne = 333.4;
char 类型
- char类型是一个单一的16位Unicode字符,默认值是'\u0000'(即为0)
- 最小值是'\u0000'(即为0)、最大值是'\uffff'(即为65,535)
- char数据类型可以储存任何字符
char letter = 'a';
boolean数据类型表示一位的信息
boolean trueFlag = true;
boolean falseFlag = false;
十进制 八进制 十六进制整数表示法
- // byte short int long 整数可以使用十进制、八进制O、十六进制0x 来表示
int demical = 120;
int octal = 0123;
int hexa = 0x63;
基本数据类型的包装类
Integer in = new Integer(100); // 将int转换为包装类
int inValue = in.intValue(); // 获取Interger的int值
获取Java包装类位数、最大最小值
public void printSth() {
System.out.println("int类型的二进制位数:" + Integer.SIZE);
System.out.println("int类型的最小值:Integer.MIN_VALUE=" + Integer.MIN_VALUE);
System.out.println("int类型的最大值:Integer.MAX_VALUE=" + Integer.MAX_VALUE);
}
数组
int[] anArray = new int[10];
for(int i=0; i<10; i++)
{
anArray[i] = 100 * (i+1);
}
/*
anArray[0] = 100;
anArray[1] = 200;
anArray[2] = 300;
anArray[3] = 400;
anArray[4] = 500;
anArray[5] = 600;
anArray[6] = 700;
anArray[7] = 800;
anArray[8] = 900;
anArray[9] = 1000;
*/
int[] anArrayTwo = new int[] { 100, 200, 300, 400 };
int anInt = anArrayTwo[1];
字符串与整数相互转换
String s = "123";
int n = Integer.parseInt(s); // 将字符串转换为整数
String s2 = Integer.toString(n); // 将整数转换为字符串
常量用大写还有final来表示
final double PI = 3.1415926;
网友评论