Bootstrap

java字符常量括_java基础---2. 常量&变量

1.常量分类:

字符串常量:双引号括起来的就是字符串常量,"abc"、"你好"

整数常量:100、200...

浮点数常量: 1.1、-3.14...

字符常量:单引号括起来的就是字符常量,'A'、'中'...

布尔常量:仅true、false

空常量:null(没有任何数据)

public class Demo01Const{

public static void main(String[] args){

//字符串常量

System.out.println("abc");

System.out.println("");//字符串两双引号之间的内容为空,可以正常打印

System.out.println("xyz");

//整数常量

System.out.println(-100);

//浮点数常量

System.out.println(3.14);

//字符常量

System.out.println('A');

//System.out.println('');//两单引号之间不可以为空,否则出错

//System.out.println('AB');//两单引号之间必须有且仅有一个字符,多了不行。

//布尔常量

System.out.println(true);

System.out.println(false);

//空常量

System.out.println(null);//空常量不可以用来直接打印输出

}

}

1.1 数据类型

基本数据类型

引用数据类型:字符串、数组、类、接口、Lambda

1.1.1基本数据类型

整数型 byte short int long

浮点型 float double

字符型 char

布尔型 boolean

10f30499e8ce63750092581b3ef0c621.png

一个字节是8位

byte (-27~27-1)

short (-215~215-1)

int (-231~231-1)

long (-263~263-1)

2^31 = 2,147,483,648‬

2^63 = 9,223,372,036,854,775,808

注意事项:

字符串不是基本类型而是引用类型

浮点型可能只是一个近似值,并非精确值。

数值范围和字节数不一定相关,例如float数据范围比long更广,但float是4字节,long是8字节

浮点数当中默认值是double,如果一定使用float类型,需要加上一个后缀F;如果是整数,默认为int型,如果一定要使用long类型,需要加上一个后缀L。推荐使用大写字母后缀。

2.变量

判断是否会报错要首先检查右边:观察常量值大小是否在对应的数据类型范围(默认情况下是int/double)内,如果超过范围则直接报错。

再看左边:观察被赋值的变量类型是否可以成功接收右边的常量

public class Demo02Var {

public static void main(String[] args){

int num1;

num1=10;

System.out.println(num1);

int num2=20;

System.out.println(num2 );

byte num3=30;

System.out.println(num3);

//byte num4=400;

//System.out.println(num4);//报错:400超出byte的范围是-128~127

short num5=50;

System.out.println(num5);

char ch='A';

System.out.println(ch);

//long num6=3000000000;//会报错,没有加L默认是int(30亿超过了int的范围)

long num6=3000000000L;

System.out.println(num6);

double num7=1.2;

System.out.println(num7);

float num8=1.2F;

System.out.println(num8);

boolean b1=true;

System.out.println(b1);

}

}

变量的注意事项:

如果定义了重复的变量名,则程序会报错。

对于float和long类型的变量,字母后缀F和L不要丢掉。

变量不可以超出作用域的范围(作用域:从定义变量的第一行开始,一直到直接所属的大括号{}结束为止)

public class Demo03Var {

public static void main(String[] args){

{

int num1=10;

System.out.println(num1);//输出10

}

System.out.println(num1);//报错 在num1的作用域外,无法输出num1

}

}

public class Demo03Var {

public static void main(String[] args){

int num1=20;

{

int num1=10;//报错 花括号外面已经定义了num1,而且还没消失,由于不可以有两个相同名字的变量同时存在 所以这里会报错

System.out.println(num1);

}

}

}

public class Demo03Var {

public static void main(String[] args){

{

int num1=10;

System.out.println(num1);//10

}

int num1=30;//此时上述花括号里的num1已经消失了,所以可以在外面重新定义另一个num1 不会报错

System.out.println(num1);//30

}

}

可以用一个语句同时创建多个变量,但是不推荐

//同时创建3个都是int类型的变量

int a,b,c;

a = 10;

b = 20;

c = 30;

System.out.println(a);//10

System.out.println(b);//20

System.out.println(c);//30

//同时创建三个int变量,并且同时各自赋值

int x=100,y=200,z=300;

System.out.println(x);//100

System.out.println(y);//200

System.out.println(z);//300

;