慕课网《二进制与Java中的基本数据类型》视频学习笔记

《二进制与Java中的基本数据类型》(完)

image.png


视频地址:https://www.imooc.com/video/21195

简介:我们都知道,计算机中都是使用2进制进行存储的。学习好二进制,对理解计算机如何处理数据以及Java中的数据类型在计算机中如何存储,都有实质性的帮助。本课程将从二进制的历史开始讲解位值制计数法、进制转换、小数的二进制化等二进制相关知识。并由此拓展介绍了Java中的整型、浮点型以及字符型。在这里还可以看到BigInteger、BigDecimal如何使用、ASCII与unicode关系等

第1章 认识计算机中的数学基础——二进制

本章带领大家认识二进制的基本概念,发展历史,使用场景,对二进制的优缺点进行分析,对全部课程做一个介绍



1-1 二进制的前世今生 (08:26)

慕课网《二进制与Java中的基本数据类型》视频学习笔记_第1张图片
image.png




慕课网《二进制与Java中的基本数据类型》视频学习笔记_第2张图片
image.png




慕课网《二进制与Java中的基本数据类型》视频学习笔记_第3张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第4张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第5张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第6张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第7张图片
image.png









第2章 计算机中的进制

本章介绍二进制与其他进制的基础——位值制计数法。以及Java中各种进制之间的转换。位运算就是直接对内存中的二进制位进行操作,讲解这种基本运算方式,体验位运算的效率




2-1 位值制计数法 (12:14)




慕课网《二进制与Java中的基本数据类型》视频学习笔记_第8张图片
image.png





慕课网《二进制与Java中的基本数据类型》视频学习笔记_第9张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第10张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第11张图片
image.png




慕课网《二进制与Java中的基本数据类型》视频学习笔记_第12张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第13张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第14张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第15张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第16张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第17张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第18张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第19张图片
image.png

2-2 Java中的进制 (15:55)


慕课网《二进制与Java中的基本数据类型》视频学习笔记_第20张图片
image.png




慕课网《二进制与Java中的基本数据类型》视频学习笔记_第21张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第22张图片
image.png




慕课网《二进制与Java中的基本数据类型》视频学习笔记_第23张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第24张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第25张图片
image.png



public class BinaryTest {

    public static void main(String[] args) {
        // 二进制
        int bin = 0b1100010;
        // 八进制
        int oct = 0142;
        // 十六进制
        int hex = 0x62;
        // 十进制
        int dec = 98;
        // 前缀是数字0,不是字母O
        // 英文字母 b x 是不区分大小写的
        // 在指定进制中使用规定的数码
        // 底层存储都是二进制的形式
        // Java默认使用十进制,输出显示都是十进制的形式
        System.out.println("2:" + bin);
        System.out.println("8:" + oct);
        System.out.println("16:" + hex);
        System.out.println("10:" + dec);
    }

}


慕课网《二进制与Java中的基本数据类型》视频学习笔记_第26张图片
image.png






慕课网《二进制与Java中的基本数据类型》视频学习笔记_第27张图片
image.png





慕课网《二进制与Java中的基本数据类型》视频学习笔记_第28张图片
image.png

慕课网《二进制与Java中的基本数据类型》视频学习笔记_第29张图片
image.png

public class BinaryTest {

    public static void main(String[] args) {
        /*// 二进制
        int bin = 0b1100010;
        // 八进制
        int oct = 0142;
        // 十六进制
        int hex = 0x62;
        // 十进制
        int dec = 98;
        // 前缀是数字0,不是字母O
        // 英文字母 b x 是不区分大小写的
        // 在指定进制中使用规定的数码
        // 底层存储都是二进制的形式
        // Java默认使用十进制,输出显示都是十进制的形式
        System.out.println("2:" + bin);
        System.out.println("8:" + oct);
        System.out.println("16:" + hex);
        System.out.println("10:" + dec);*/
        int num = 98;
        /*System.out.println("2:" + Integer.toBinaryString(num));
        System.out.println("8:" + Integer.toOctalString(num));
        System.out.println("16:" + Integer.toHexString(num));*/
        /*System.out.println("2:" + Integer.toString(num, 2));
        System.out.println("8:" + Integer.toString(num, 8));
        System.out.println("16:" + Integer.toString(num, 16));
        //-----------------------
        System.out.println("------------------");
        System.out.println("5:" + Integer.toString(num, 5));
        System.out.println("36:" + Integer.toString(num, 36));
        System.out.println("37:" + Integer.toString(num, 37));
        System.out.println("100:" + Integer.toString(num, 100));*/

        System.out.println(Integer.parseInt("1100010", 2));
        System.out.println(Integer.parseInt("62", 16));
        System.out.println(Integer.parseInt("2q", 36));
    }

}





2-3 位运算 (12:47)


慕课网《二进制与Java中的基本数据类型》视频学习笔记_第30张图片
image.png




慕课网《二进制与Java中的基本数据类型》视频学习笔记_第31张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第32张图片
image.png




慕课网《二进制与Java中的基本数据类型》视频学习笔记_第33张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第34张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第35张图片
image.png

慕课网《二进制与Java中的基本数据类型》视频学习笔记_第36张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第37张图片
image.png




慕课网《二进制与Java中的基本数据类型》视频学习笔记_第38张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第39张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第40张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第41张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第42张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第43张图片
image.png







第3章 基本数据类型的存储

本章介绍比特与字节的概念,对java中的 .class文件与Jvm进行了基本介绍。基本数据类型部分,主要介绍了整形和浮点型:整型的储存,多字节大小端问题、符号问题,补码问题。补码的加减移位运算;小数的二进制化,浮点数的存储原理 IEEE754。以及Java中解决两个问题:整型取值范围问题引入的BigInteger,和精度丢失问题引入的BigDecimal。此外还介绍了ASCII与unicode关系以及boolean的存储

慕课网《二进制与Java中的基本数据类型》视频学习笔记_第44张图片
image.png


3-1 Java中的整数类型 (10:36)


慕课网《二进制与Java中的基本数据类型》视频学习笔记_第45张图片
image.png




慕课网《二进制与Java中的基本数据类型》视频学习笔记_第46张图片
image.png







慕课网《二进制与Java中的基本数据类型》视频学习笔记_第47张图片
image.png

慕课网《二进制与Java中的基本数据类型》视频学习笔记_第48张图片
image.png



public class BigIntegerTest {

    public static void main(String[] args) {
        BigInteger b1 = new BigInteger("29");
        BigInteger b2 = new BigInteger("1010", 2);
        BigInteger b3 = BigInteger.valueOf(33l);
        
        System.out.println(b1.toString());
        System.out.println(b2.toString());
        System.out.println(b3.toString(2));
    }

}




慕课网《二进制与Java中的基本数据类型》视频学习笔记_第49张图片
image.png





慕课网《二进制与Java中的基本数据类型》视频学习笔记_第50张图片
image.png
public class BigIntegerTest {

    public static void main(String[] args) {
        BigInteger b1 = new BigInteger("29");
        BigInteger b2 = new BigInteger("1010", 2);
        BigInteger b3 = BigInteger.valueOf(33l);

        /*System.out.println(b1.toString());
        System.out.println(b2.toString());
        System.out.println(b3.toString(2));*/
        BigInteger add = b1.add(b2);
        BigInteger sub = b1.subtract(b2);
        BigInteger mul = b1.multiply(b2);
        BigInteger div = b1.divide(b2);
        System.out.println(add);
        System.out.println(sub);
        System.out.println(mul);
        System.out.println(div);
    }

}


3-2 小数的二进制化 (08:28)


慕课网《二进制与Java中的基本数据类型》视频学习笔记_第51张图片
image.png




慕课网《二进制与Java中的基本数据类型》视频学习笔记_第52张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第53张图片
image.png




慕课网《二进制与Java中的基本数据类型》视频学习笔记_第54张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第55张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第56张图片
image.png





3-3 IEEE754及BigDecimal (12:36)


image.png




慕课网《二进制与Java中的基本数据类型》视频学习笔记_第57张图片
image.png







image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第58张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第59张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第60张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第61张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第62张图片
image.png

public class BigDecimalTest {
    public static void main(String[] args) {
       /*BigDecimal b1 = new BigDecimal("0.1");
        BigDecimal b2 = new BigDecimal(0.1);
        System.out.println(b1.toString());
        System.out.println(b2.toString());
        BigDecimal b3 = new BigDecimal(0.1 + "");
        System.out.println(b3.toString());
        BigDecimal bigDecimal = BigDecimal.valueOf(0.1);
        System.out.println(bigDecimal);*/
        BigDecimal b1, b2;
        b1 = BigDecimal.valueOf(0.3);
        b2 = BigDecimal.valueOf(0.1);
        BigDecimal div1 = b1.divide(b2);
        System.out.println(div1);
        BigDecimal div2 = b2.divide(b1, new MathContext(5, RoundingMode.HALF_UP));
        System.out.println(div2);
    }
}



3-4 Java中的字符型和布尔类型 (09:24)


慕课网《二进制与Java中的基本数据类型》视频学习笔记_第63张图片
image.png


慕课网《二进制与Java中的基本数据类型》视频学习笔记_第64张图片
image.png







慕课网《二进制与Java中的基本数据类型》视频学习笔记_第65张图片
image.png



ASCII


慕课网《二进制与Java中的基本数据类型》视频学习笔记_第66张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第67张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第68张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第69张图片
image.png



慕课网《二进制与Java中的基本数据类型》视频学习笔记_第70张图片
image.png



第4章 回顾与总结

将本课程提到的所有内容进行一个回顾与总结



4-1 回顾与总结 (05:08)




慕课网《二进制与Java中的基本数据类型》视频学习笔记_第71张图片
image.png





慕课网《二进制与Java中的基本数据类型》视频学习笔记_第72张图片
image.png







本文由博客一文多发平台 OpenWrite 发布!

你可能感兴趣的:(慕课网《二进制与Java中的基本数据类型》视频学习笔记)