常量的基础认知和相互转化
常量:在java程序运行过程中,其值不能够发送改变的量
分类:
字面值常量:
字符串常量:被双引号括起来的字符序列 "java"
字符常量:被单引号括起来的单个字符 'a'
整数常量:所有的整数 100 200 -100
小数常量:所有的小数 1.23 3.14 -1.23
布尔常量:true false
空常量:null(数组的时候说明)
自定义常量:(面向对象的时候说明)
java针对整数常量,提供了4种表现形式
二进制:由0,1构成,逢2进1,由0b开头
八进制:由0,1,2,3,4,5,6,7构成,逢8进1,由0开头
十进制:由0,1,2,3,4,5,6,7,8,9构成,逢10进1,java中整数默认是十进制的
十六进制:由0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f构成,逢16进1,由0x开头
进制之间的转换:
1、其他进制转十进制?
(十进制)12345 -> (十进制)12345
12345 = 10000 + 2000 + 300 + 40 + 5
= 1*10^4 + 2*10^3 + 3*10^2 + 4*10^1 + 5*10^0
= 10000 + 2000 + 300 + 40 + 5
= 12345
规律:系数*原进制的指数次幂的和
(二进制)100 -> (十进制)4
100 = 1*2^2 + 0*2^1 + 0*2^0
= 4
2、十进制转其他进制?
规律:除基取余数,知道商为0,余数反转
(十进制)64 -> (八进制)
64/8=8....0
8/8=1.....0
1/8=0.....1
余数反转:0100
3、十进制与二进制之间的快速转换 8421码
(二进制)10100 -> 1*2^4 + 1*2^2 = 20(十进制)
一个字节:8位
1byte = 8bit
1kb = 1024byte
1mb = 1024kb
1gb = 1024mb
1tb = 1024gb
1pb = 1024tb
(二进制)1 1 1 1 1 1 1 1
(十进制)128 64 32 16 8 4 2 1
4、其他进制与其他进制(举例:二进制->八进制)
做法1:先转10进制,再转八进制
做法2:从右向左,每3位一组合,最左边的够,用0补齐,算每一组合的进制结果,拼接
10100(二进制) => 20(十进制) => 24(八进制)
注意:
1、默认情况下,idea输出的结果是转化成十进制的结果
2、学习进制的目的是为了学习二进制与十进制的关系,因为二进制是计算机的语言,而十进制是我们人类的语言
开拓
1、一个java文件中,可以写多个类的,每一个class类都会被单独地编译成一个class文件
2、被public修饰的类必须与java文件名一样的
3、不是所有的class类都要运行的,不需要所有的都加main方法
`public class Demo1 {
public static void main(String[] args) {
System.out.println("hello1");
}
}
class Demo2{
public static void main(String[] args) {
System.out.println("hello2");
}
}
//文件名:"Demo1"`
放弃幻想,准备斗争!