小白Java学习第三天
1,类型转换
-
由于java是强类型语言,所以在进行有些运算时需要用到类型转换
低--------------------------------------------------> 高 byte,short,char,--->int----->long---->float---->double
-
注意:运算中不同类型的数据,先转换为同一类型,然后运算,
-
强制类型转换(从高到低时)
-
int i =128; byte b= (byte)i; System.out.println(b); // 不能直接输出i,要先将i转换为byte型 //内存会溢出 , -128<byte<127
-
-
自动类型转换(从低到高)
- 注意:
- 不能对boolean(布尔型)进行转换。
- 不能把对象类型转化为不相干的类型,
- 把高容量转化到低容量是要进行强制转化。
- 转换时可能会出现内存溢出,或精度问题。(如:浮点数转化为整形时,)
- 注意:
-
补充:
-
操作较大的数时,容易出现溢出问题。
-
数字之间可以用下划线分割,并且下划线并不会被输出。
-
public class Demo04{ public static void main(String[] args) { int i =128; byte b= (byte)i; System.out.println(b); // 内存会溢出 , -128<byte<127 // 操作比较大的数时也容易出现溢出现象。 //数字之间可以用下划线隔开 ,输出时并不会出现下划线。 int money=20_0000_0000; int years= 20; int total = money*years; //此时会溢出 因为int最大到21亿,20亿*20大于21亿 所以溢出。 long total2= money*years; // 此时还会溢出,因为默认是int型,转换之前问题已存在。 long total3 = money*((long)years); // 先将数据转换成 long类型 ,此时正确输出2000000000 } }
-
-
2,变量,常量
什么是变量
- 可以变化的量。
- 自我理解:在内存中存在一个空间,但空间中存在什么,是不确定的,这个空间可以被命名,这个空间就是变量。
Java 是一种强类型语言,每个变量都必须声明其类型
- Java 变量是程序中最基本的存储单元,其要素包括变量名,变量类型,和作用域。
注意事项:
- 每个变量都有类型,类型可以是基本类型,也可以是引用类型。
- 变量名必须是合法标识符。
- 变量声明是一条完整的语句,因此每一个声明都必须以分号结束。
类变量
- 需要加关键词 static
实例变量
- 实例变量是从属于对象的,如不进行初始化,就会返回默认值
- 布尔值(Boolean),默认是false。
- 除了基本类型,其余类型默认值都是 null。
局部变量
- 局部变量在方法中
- 必须声明,初始化值
public class Demo06 {
// 类变量
static int allClick=0;
// 实例变量
String str="HelloWorld";
// main 方法
public static void main(String[] args) {
int a = 1 ; // 局部变量, 局部变量是在方法中的
}
}
public class Demo05 {
static double salary = 25000;// 类变量, 关键词是static
public static void main(String[] args) {
int a = 1;
int b = 2;
String name = "葫芦娃";
char x = 'X';
double s = 3.141592654;
System.out.println(salary);
}
}
常量
-
初始化后不能改变的值,不会变动的值。
-
所谓的常量,可以理解为一种特殊的变量,他的值在设定后在程序运行中不允许被改变。
-
关键词: final
final double PI= 3.14159226
-
常量名一般使用大写字符。
变量命名规范
- 所有的变量方法,都要见名知意。
- 类成员变量:首字母小写和驼峰原则,驼峰原则:除了第一个单词外,后面的单词首字母大写。
- 局部变量:首字母小写和驼峰原则。
- 常量:大写字母和下划线。例:MAX_APPLE.
- 类名:首字母大写,和驼峰原则。Good Apple,Man。
- 方法名:首字母小写和驼峰原则。
能感觉到自己在慢慢学到东西,这感觉可真不错。
虽然走得很慢,但是确实在前进。