常量的基础认知和相互转化

常量:在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"`

posted @ 2024-08-09 20:57  独角戏小南街  阅读(0)  评论(0编辑  收藏  举报