java基础-变量定义
3.1.关键字总结表

3.2.常量
常量的意思是在程序执行的过程中不能改变的量
java常量的分类
常量分类 | 说明 | 举例 |
字符串常量 | 用字符串括起来的多个字符 | “happy”、“大佬” |
整数常量 | 不带小数的数字 | 1,20,300,4000 |
小数常量 | 带小数的数字 | 1.1,2.2,30.0 |
字符常量 | 只有一个字符的常量 | ‘朕’,‘a’ |
布尔常量 | 判定真假的常量 | false、true |
空常量 | 一个特殊值,表示空值 | null |
3.3.数据类型
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6T5Yw6h0-1592740694049)(image-20200617203157374.png)] JAVA定义敞亮 java的定义变量_数据类型_02](https://s2.51cto.com/images/blog/202309/19074837_6508e1d54403c63677.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=/resize,m_fixed,w_1184)
3.3.1.基本数据类型所占字节 (4类8种)
数据类型 | 关键字 | 内存占用字节 | 取值范围 | 默认值 |
整数类型 | byte | 1 | -128–127 | 0 |
short | 2 | -32768~32767 | 0 | |
int(默认) | 4 | -2的31次方到2的31次方-1 | 0 | |
long | 8 | -2的63次方到2的63次方-1 | 0 | |
浮点数类型 | float | 4 | 负数:-3.402823E+38到-1.401298E-45 正数:1.401298E-45到3.402823E+38 | 0.0 |
double(默认) | 8 | 负数:-1.797693E+308到-4.9000000E-324 正数:4.9000000E-324到1.797693E+308 | 0.0 | |
字符类型 | char | 2 | 0-65535 | ‘\u0000‘ |
布尔类型 | boolean | 1 | true、false | false |
在java中基本整型默认是int类型、浮点型默认是double类型
3.3.2.变量
在程序运行的过程中可以发生改变的量称之为变量
1.变量的定义格式:
变量的定义格式分为以下几种:
1.在声明变量的时候完成赋值
int age = 20;
2.先声明变量再赋值
int age;
age = 20;
3. 在同一行定义多个相同数据类型的变量
int a,b;
4.在同一行定义多个相同数据类型的变量,并对其进行赋值
int a = 1,b = 2;
2.变量的声明需要注意的事项:
1.在同一个花括号中变量名不能相同
2.变量在使用之前必须赋值
3.在定义long类型变量的时候,需要在数字后面加上L(大小写都行,一般建议是大写),因为整数类型默认是int类型的,整数太大可能会超 出int的取值范围。
1.报错
public class long_define{
public static void main(String[] args){
long a = 10000000000; //报错
System.out.println(a);
}
}![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6BwFZT2Q-1592740694055)(image-20200618115859290.png)] JAVA定义敞亮 java的定义变量_强制类型转换_03](https://s2.51cto.com/images/blog/202309/19074837_6508e1d56408657538.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=/resize,m_fixed,w_1184)
2.正确格式
public class long_define{
public static void main(String[] args){
long a = 10000000000L; //报错
System.out.println(a);
}
}![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EyxQTjC7-1592740694064)(image-20200618120038939.png)] JAVA定义敞亮 java的定义变量_JAVA定义敞亮_04](https://s2.51cto.com/images/blog/202309/19074837_6508e1d57025531504.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=/resize,m_fixed,w_1184)
4.在定义float类型变量的时候,需要在数字后面加上F(大小写都行,一般建议是大写),因为浮点类型默认是double类型的,double类型8个字节,如果不加F会报错
1.报错
public class float_define{
public static void main(){
float a = 60.5; //报错
System.out.println(a);
}
}![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ti0Vih6E-1592740694068)(image-20200618121055714.png)] JAVA定义敞亮 java的定义变量_JAVA定义敞亮_05](https://s2.51cto.com/images/blog/202309/19074837_6508e1d57de9592083.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=/resize,m_fixed,w_1184)
2.正确格式
public class float_define{
public static void main(String[] args){
float a = 60.5F; //
System.out.println(a);
}
}
3.3.3.标识符
标识符是用户编程时使用的名字,用于给变量,方法,类,常量命名。
1.java中标识符的命名规范
1.由字母、数字、下划线“_”、美元符号“$”组成
2.第一个字符不能是数字。
3.不能使用java中的关键字作为标识符。
4.标识符对大小写敏感(区分大小写)
2.Java中标识符的命名约定
- 小驼峰式命名:主要是针对------> 变量名、方法名
首字母小写,从第二个单词开始每个单词的首字母大写。 - 大驼峰式命名:主要是针对------> 类名
每个单词的首字母都大写。 - 另外,标识符的命名最好可以做到见名知意
例如:username、studentNumber等。
3.3.4.数据类型转换

1.自动类型转换
public class type_change{
public static void main(String[] args){
double a = 4;//对a的赋值是整数,但是最后自动转换为浮点型数
System.out.println(a);
}
}2.自动类型转换(反例)
public class type_change{
public static void main(String[] args){
int a = 4.0;
System.out.println(a);
}
}
3.数据类型的自动转换从占用内存小的小向占用内存大的自动转换:

4.强制类型转换
从占用内存较大的数据类型转为占用内存较小的数据类型
1.格式:
目标数据类型 目标变量 = (目标变量数据类型)原变量
例1、
public class type_change_plus{
public static void main(String[] args){
double num = 1;
int a;
a = (int)num; //强制类型转换
System.out.println(a);//输出结果是1
}
}
例2、
public class type_change_plus{
public static void main(String[] agrs){
int a = 4;
short b = (short)a; //格式1
byte c = (byte)(4); //格式2
System.out.println(b);
System.out.println(c);
}
}
5.char类型的转换
1.char类型的数据转换为int类型是根据ASCII码表进行计算的
public class char_change{
public static void main(String[] args){
char ch1 = 'a';//在ASCII码表中所对应的十进制数为97
System.out.println(ch1); //输出 a
int num = ch1;
System.out.println(num); //输出 97
}
}
2.char类型的数据转换为浮点型是根据ASCII码表进行计算的,然后将int类型自动转换为double类型**
public class char_change{
public static void main(String[] args){
char ch1 = 'a';
System.out.println(ch1);
double num = ch1; //转换为double类型
System.out.println(num); //输出结果是97.0
}
}
3.char类型转为byte、short类型需要进行强制转换
例1(进行强制类型转换)
public class char_change{
public static void main(String[] args){
char ch1 = 'a';
System.out.println(ch1);
short num = (short)ch1;
System.out.println(num);
}
}
例2(没有进行强制类型转换)
public class char_change{
public static void main(String[] args){
char ch1 = 'a';
System.out.println(ch1);
short num = ch1;
System.out.println(num);
}
}
ASCII码表

在这里插入图片描述
6.boolean类型不能与其他类型进行强制类型转换
例(即使进行强制类型转换也不行)
public class boolean_change{
public static void main(String[] args){
boolean T = true;
int a = (int)T; //试图强制类型转换
System.out.println(T);
System.out.println(a);
}
}
















