《Java核心技术卷一》基础巩固(第1-3章)

《Java核心技术卷一》基础巩固(第1-3章)

前言

频繁的用一门语言写程序,很容易陷入自身的习惯中,但并不知道自己的一些“习惯”是否“正确”。因此开设此文章用于巩固和强化Java基础的学习。

名词术语

image.png

jdk,jre,se,ee,sdk的区分和全称

jdk版本命名

image.png

命令行编译运行程序

image.png

变量类型介绍

image.png

8种基本类型

整型

image.png

浮点型精度问题

image.png

char类型的建议

image.png

常量

image.png

常量类

image.png

变量类型自动转换

image.png

“++”的使用建议

image.png

运算符

image.png

位运算符

image.png

枚举类型

image.png

字符串

image.png

字符串的join方法

image.png

字符串的equals方法

image.png

判断字符串是否相等的注意事项

image.png

一定不要用==来判断

检查null和""

image.png

码点和代码单元

image.png

String API

image.png

StringBuilder

image.png

读取输入

image.png

读取输入 API

image.png

格式化输出

image.png

String.format和时间格式化

image.png

格式说明符语法图

image.png

文件输入与输出

image.png

控制流程-块

image.png

浮点数在for循环中使用

image.png

for和while循环的关系

image.png

case语句的注意事项

image.png

带标签的break

image.png

continue语句

image.png

大数值

《Java核心技术卷一》基础巩固(第1-3章)_第1张图片
注:在实际应用中,涉及到金额计算基本都使用BigDecimal来操作。

//计算工具类
public class BigDecimalUtil {  
    private BigDecimalUtil(){}  
    public static BigDecimal add(double v1,double v2){  
        BigDecimal b1 = new BigDecimal(Double.toString(v1));  
        BigDecimal b2 = new BigDecimal(Double.toString(v2));  
        return b1.add(b2);  
    }  
  
    public static BigDecimal sub(double v1,double v2){  
        BigDecimal b1 = new BigDecimal(Double.toString(v1));  
        BigDecimal b2 = new BigDecimal(Double.toString(v2));  
        return b1.subtract(b2);  
    }
  
    public static BigDecimal mul(double v1,double v2){  
        BigDecimal b1 = new BigDecimal(Double.toString(v1));  
        BigDecimal b2 = new BigDecimal(Double.toString(v2));  
        return b1.multiply(b2);  
    }  
  
    public static BigDecimal div(double v1,double v2){  
        BigDecimal b1 = new BigDecimal(Double.toString(v1));  
        BigDecimal b2 = new BigDecimal(Double.toString(v2));  
        return b1.divide(b2,2,BigDecimal.ROUND\_HALF\_UP);//四舍五入,保留2位小数  
    }  
}

数组

《Java核心技术卷一》基础巩固(第1-3章)_第2张图片

foreach

《Java核心技术卷一》基础巩固(第1-3章)_第3张图片

数组的初始化和匿名数组

《Java核心技术卷一》基础巩固(第1-3章)_第4张图片

数组拷贝

《Java核心技术卷一》基础巩固(第1-3章)_第5张图片

命令行参数:main方法里的[]

《Java核心技术卷一》基础巩固(第1-3章)_第6张图片

数组排序 sort方法

《Java核心技术卷一》基础巩固(第1-3章)_第7张图片

random方法的特点

image.png

Arrays API

《Java核心技术卷一》基础巩固(第1-3章)_第8张图片

二维数组

《Java核心技术卷一》基础巩固(第1-3章)_第9张图片

不规则数组

image.png

//示范样例
public static void main(String[] args) {
    final int NMAX = 10;
    //分配一个具有所含行数的数组
    int[][] odds = new int[NMAX + 1][];
    //分配这些行
    for (int n = 0; n <= NMAX; n++){
        odds[n] = new int[n + 1];
    }
    //赋值
    for (int n = 0; n < odds.length; n++){
        for (int k = 0; k < odds[n].length; k++) {
            int lotteryOdds = 1;
            for (int i = 1; i <= k; i++)
                lotteryOdds = lotteryOdds * (n - i + 1) / i;
            odds[n][k] = lotteryOdds;
        }
    }
    //取值
    for (int[] row : odds) {
        for (int odd : row)
            System.out.printf("%4d", odd);
        System.out.println();
    }
}

后记

总结
至此就介绍完《Java核心技术卷一》(第1-3章)的内容了,希望对大家有所帮助。笔者不才,文章若有疑问或错误之处欢迎一起讨论。
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

你可能感兴趣的:(java,书籍,基础)