标识符的注意事项
package basis.day02;
/** * 标识符的命名规则,命名规范(遵守规则,规范) * @author LENOVO * */
public class TestIdentifier {
/* * 标识符:所有可以自己命名的东西。 * * 标识符的命名规则: * 1.可以使用26个字母大小写,0-9数字, _ , $ * 2.数字不能开头 * 3.不能使用关键字和保留字 * 4.命名里面可以包含关键字或者保留字 * 5.标识符中不能包含空格,java中严格区分大小写,长度没有限制 * * 标识符的命名规范: * 1.类名,接口名,由多单词组成时,所有单词首字母大写 * 2.包名,由多单词组成时,所有单词小写 * 3.方法名,变量名,由多单词组成时,除首单词其余单词首字母大写 * 4.常量名,由多单词组成时,所有字母大写,单词之间用_连接 */
public static void main(String[] args){
//int 3ac = 4;
System.out.println("遵守命名规则,规范");
}
}
变量:内存中一块被命名的,大小和范围受到数据类型约束的区域。其中保存的内容可以在其范围内无限次被修改。
变量的作用,解决单个数据存储的问题。
变量声明初始化过程:
语法:
类型 变量名 = 初始化值; (在变量刚开始声明出来第一次赋值)
/** 声明两个int型变量并对其进行初始化赋值, 并用第二个变量保存这两个变量和,最后输出这两个变量的值 变量:内存中一块被命名的,大小范围受数据类型限制的区域。 */
public class VariableTest {
public static void main(String[] args) {
//声明两个int型变量并对其进行初始化赋值.
//int var1;在内存开辟一块名字为var1的地址空间,这样做很危险,所以一定要对其进行赋值。
//var1 = 100;将100写入地址空间名字为var1地址。
int var1 = 100;
int var2 = 200;
//用第二个变量保存这两个变量的和
//先找到var1对应的地址和var2对应的地址并将它们其中存储的数据复制到一块临时空间中,将他们进行+运算,然后写入var2。
var2 = var1 + var2;
//输出两个变量
System.out.println(var1);
System.out.println(var2);
}
}
变量的使用注意事项:
1.具有作用范围(声明语句所属的{})
2.必须先声明,后使用
3.局部变量必须进行初始化赋值
4.变量必须有名字,有类型
5.变量在其作用范围之内不允许重复定义
6.变量保存的值具有类型和范围
7. a=b 将变量b的值赋给a的过程,是直接将变量b保存的值copy给a。
变量的分类 :
1.按照数据类型分为
基本数据类型 : 区域中保存的是数据本身
引用数据类型 : 区域中保存的是其他数据的内存地址 是一个无符号整数(大小取决于JDK版本) null 地址就是0地址
基本数据类型:数值型(无论正数负数底层都是以补码形式存储)
整数 byte 1字节 -128~127
short 2字节 -32768~32767
int 4字节 -20多亿~20多亿
long 8字节
char 2字节 0~65535
浮点数
float 4字节 10的38次方
double 8字节 10的308次方
布尔型 boolean 1字节 true(1)false(0)
2.按照变量的范围分类:
1) 局部变量 : 在方法中声明的变量 范围小, 寿命短
2) 成员变量 : 在类中方法外声明的变量 范围大, 寿命长
package basis.day02;
/** * 变量,变量的声明初始化 变量类型 变量名称 = 值; * @author LENOVO * */
public class TestVariable {
/* * 8中基本类型 */
public static void main(String[] args){
//要想使用变量,必须先声明,并进行初始化,才能使用。否则报错。
//变量使用范围{}
//byte b ;
/* * byte 1字节 -128~127 */
byte b2 = 123;
System.out.println(b2);
/* * short 2字节 */
short s = 234;
System.out.println(s);
/* * int 4字节(整型的默认类型) */
int i = 434;
System.out.println(i);
/* * long 8字节(初始化赋值时要在末尾加l或者L,若是没有超出int范围,可以不加) */
long l = 243245352342L;
System.out.println(l);
/* * float 4字节 */
float f = 123.4f; //赋值时必须加f,因为默认为double,大转小要强转(只有字面值才可以在末尾加f,其他需要强转)
System.out.println(f);
/* * double 8字节(浮点型的默认类型) */
double d = 345.65;
System.out.println(d);
/* * char(只能表示一个字符) */
char c = 'a';
char c2 = '中';
char c3 = 'b';
char c4 = '\t';
System.out.println(c);
System.out.println(c2);
System.out.println(c + c3); //两个字符型的相加得到的int型(以两个字符型的数据为开头进行拼接时注意)
System.out.println("在" + c4 + "这儿!");
/* * boolean (只有 true或false两个值) */
boolean bool1 = false;
if(bool1){
System.out.println("干的漂亮!");
}else{
System.out.println("\"GG\""); // '\'的使用
}
}
}
8种基本类型,String类型(运算,自动转,强转)
package basis.day02;
/** * 8中基本类型之间的转换,自动转/强转,还有和String类型之间的运算 * @author LENOVO * */
public class TestVariable_2 {
public static void main(String[] args){
//char,byte,short--->int--->float--->double
//范围小的数据类型与范围大的数据类型之间进行运算,自动转换为范围大的数据类型。
//char,byte,short类型之间进行运算时自动转化为int型
/* * byte/short/int */
byte b1 = 123;
short s1 = 234;
//byte short类型的数据之间进行运算,他们都自动转化为int型。
//short = b1 + s1;
int i = b1 + s1;
System.out.println(i);
int i2 = 456;
int i3 = b1 + i2; //byte型在运算时自动转化为int型
System.out.println(i3);
int i4 = i2 + s1;
System.out.println(i4); //short型在运算时自动转化为int型
char c = 'a';//97
b1 = 1;
//byte b2 = c + b1; //char,byte,short之间进行运算时自动转为int型
int ii = c + b1;
System.out.println(ii);
i2 = 1;
float f = 3.45f;//浮点型默认数据类型是double型,若是声明float型变量需要在数据的后边加f
//int ii2 = i2 + f;//float与int型之间进行运算,自动转化为float型
float f2 = i2 + f;
System.out.println(f2);
double d = 34.56;
double d2 = f + d; //float自动转为double
System.out.println(d2);
/* * 强转 */
byte bb1 = 5;
int ii1 = 6;
byte bb2 = (byte)(bb1 + ii1); //范围大的数据类型转化为范围小的数据类型需要强转
System.out.println(bb2);
/* * String类型和基本类型之间的运算 * String类型与基本类型之间进行运算,'+'作为连接符存在的。 */
String str = "Hello";
int iis = 1 ;
char c2 = 'b';//98
System.out.println(str + iis + c2); //Hello1b
System.out.println(iis + c2 + str); //99Hello
System.out.println(c2 + str + iis); //bHello1
}
}