转载

Java核心技术 卷1 基础知识 学习笔记——第三章 java的基本程序设计结构

1. 一个正整数除以0的结果为正无穷大,0/0或者负数的平方根的结果为NaN(不是一个数字);

if(x==Double.NaN)//is never true,所有非数值的值都认为是不同的

if(Double.isNaN(x))//检查x是否为不是一个数字

2. System.out.println(2.0-1.1);

输出的值为0.8999999999999999,浮点数值采用二进制系统表示,无法精确表示分数1/10;

3. char

public static void main(Stringu005Bu005D args)

System.out.println("u0022+u0022");//表示“”+“”,输出空

// c:user 会报错,u后面未跟着4个16进制数

4. 使用static final声明一个类常量

5. 运算符

15/2输出7,15%2输出1,15.0/2输出7.5

System.out.println(1.5/0);//输出Infinity

System.out.println(2/0);System.out.println(0/0);

报Exception in thread "main" java.lang.ArithmeticException: / by zero

strictfp关键字标记的方法必须使用严格的浮点计算来生成可再生的结果。

++i:先加1;i++:先获取值再加1

a+=b+=c等于a+=(b+=c)

6.在源文件顶部引入math,使用时就不用再写Math

import static java.lang.Math.*;

System.out.println(sqrt(2));

7.类型转换

实心箭头表示无信息丢失的转换,虚线箭头表示可能有精度损失的转换;

Java核心技术 卷1 基础知识 学习笔记——第三章 java的基本程序设计结构

Java核心技术 卷1 基础知识 学习笔记——第三章 java的基本程序设计结构

System.out.println((byte)300);//输出44

8.字符串

String all = String.join("/", "S", "M", "L", "XL", "XXL");

输出:S/M/L/XL/XXL

9.码点的问题

10.javaApi地址: https://docs.oracle.com/javase/8/docs/api

11.每次连接字符串,都会构建一个新的String对象。

12.Scanner,printf的用法,printf的详细用法请看书

Scanner in = new Scanner(System.in);

        // get first input
        System.out.print("What is your name? ");
        String name = in.nextLine();

        // get second input
        System.out.print("How old are you? ");
        int age = in.nextInt();

        // display output on console
        System.out.printf("Hello,%s. Next year, you'll be %d",name,age+1);
        System.out.println();
        Double x = 100000.0 / 3;
        System.out.println(x);
        System.out.printf("%8.2f", x);
Scanner in = new Scanner(Paths.get("C://Users//yr//Desktop//3.txt"), "UTF-8");//读取文件
PrintWriter out = new PrintWriter("C://Users//yr//Desktop//3.txt", "UTF-8");//写文件

13.

public static void main(String/u005B/u005D args) throws IOException {
        for (double i = 0; i != 10; i += 0.1) {
            System.out.println(i);
        }

    }//这个循环可能永远无法停止,因为二级制无法精确表示0.1

Java核心技术 卷1 基础知识 学习笔记——第三章 java的基本程序设计结构

14.switch语句

编译代码时,可以考虑加上-Xlint:fallthrough选项

如:javac -Xlint:fallthrough Test.java

如果某个分支缺少一个break语句,编译器就会给出一个警告信息

15.带标签的break

int n = 1;
        lable: while (true) {
            if (n < 5)
                break lable;
        }

16.对象数组的元素初始化为一个特殊值null

17.java实际没有多维数组,只有一维数组,多维数组被解释为数组的数组。

原文  https://segmentfault.com/a/1190000019863078
正文到此结束
Loading...