从零开始学JAVA(02):基本知识、基本数据类型、运算符、转义符

目录

一、表达式、语句、代码块

二、基本点

三、二进制

1、十进制

2、二进制

3、十六进制

4、bit 和 byte 

四、数据类型(基本数据类型,四类八种:整数、浮点、字符、布尔)

1、数字的基本数据类型

2、布尔和字符数据类型

3、数据类型自动转换

4、强制类型转换

5、 和JavaScript不一样的String

五、运算符

1、加减乘除

2、取模运算符:%

3、整数的除法运算 

4、比较运算符

5、布尔运算符

6、小括号运算符

7、运算符优先级

8、按位运算符

9、位移运算符

六、转义符语法和常用的转义符


一、表达式、语句、代码块

  • 表达式:Java中最基本的一个运算,比如一个加法运算表达式,1+2、2+8……
  • 语句:类似于一句话,由表达式组成,以 结束。如: a = 1+3;  System.out.println(y); 都是语句
  • 代码块:一对大括号括起来的就是代码块

二、基本点

  • 关键字和标识符都是区分大小写的
  • 类名必须与文件名一致,包括大小写要求
  • 使用变量时,名字必须和声明变量时的标识符大小写一致
  • 方法名也区分大小写,main和Main是两个名字
  • 类型写区分大小写。int是数据类型,Int则不是
  • System.out.println可以被识别,但System.out.printlN则不行

三、二进制

1、十进制

每一位可以是0~9这10个值,到10进位。一百用十进制表示为100,十就是10

2、二进制

每一位可以是0和1,到2进位。一百用二进制表示是1100100,十就是1010

3、十六进制

每一位可以是0~F这16个值,到16进位。一百用十六进制表示为64,十就是A 

4、bit 和 byte 

  • 一个二进制的位叫做一个bit。网络带宽中的单位,都是bit
  • 八个二进制的位,组成一个byte。硬盘等存储的单位,都是byte
  • byte是计算机中基本的衡量存储的单位,计算机在对外使用时不会用bit作为划分存储的单位

四、数据类型(基本数据类型,四类八种:整数、浮点、字符、布尔)

1、数字的基本数据类型

(1)整数类型

  • byte:占用1个byte,值域是 -128~127
  • short:占用2个byte,值域是 -32768~32767
  • int:占用4个byte,值域是 -2147483648~2147483647。Java中整数缺省是int类型
  • long:占用8个byte,值域是 -9223372036854774808~9223372036854774807

(2)浮点(小数)类型

  • float:占用4个byte,有精度,值域复杂±340282346638528859811704183484516925440
  • double:精度是float的两倍,占用8个byteJava中浮点数缺省是double类型 

(3)符号位

2、布尔和字符数据类型

  • boolean:占用1个byte,值域是true,false
  • char:占用2个byte,值域是所有字符
public class Datatype {
    public static void main(String[] args) {
        byte byteNum = 99;
        System.out.println(byteNum);

        short shortNum = 10000;
        System.out.println(shortNum);

        int intNum2 = 1000000000;
        System.out.println(intNum2);

        long longNum1 = 1;
        long longNum2 = 10000000000000000L;
        System.out.println(longNum1);
        System.out.println(longNum2);

        float floatNum = 100.1f;
        System.out.println(floatNum);

        double doubleNum = 100.1;
        System.out.println(doubleNum);

        boolean booleanVar = true;
        System.out.println(booleanVar);

        char charVar = '才';
        System.out.println(charVar);
    }
}

3、数据类型自动转换

  • 不会出现问题的类型转换,编程语言可以做自动类型转换,比如低精度的数字向高精度的数字转换。
  • 自动类型转换可以发生在算数运算,也可以发生在赋值
  • 数值精度顺序:double > float > long > int > short > byte
  • char可以转换为int
  • 虽然同样是两个byte,但是因为char是无符号数,值域超出了short可以表示的范围,所以不可以自动转为short

4、强制类型转换

  • 可能出现问题的类型转换,需要使用强制类型转换,比如高精度数值向低精度数值转换
  • 强制类型转换也是操作符
  • 语法是用小括号括起来的目标类型放在被转换的值前面
  • 强制转换会造成数据精度丢失
  • 数值计算一旦溢出,结果将失去其原有意义。比如:两个正数会加出负数
  • 要对能够处理的值有大概得估计
long longVar = 10000;
int intVar = (int) longVar;  // 强制类型转换


int int1 = 1999999999;
int int2 = 1999999999;
System.out.println(int1 + int2); // 加出来了一个负数

5、 和JavaScript不一样的String

  • 字符串的名字叫做String
  • String 并不是java中的基本数据类型,但是可以用 String str = "lcy";的方式创建
  • String不是java中的保留字
String strName = "lcy";
int String = 0;
String strName1 = "lcy";
System.out.println(strName1);
System.out.println(strName);
System.out.println(String);

五、运算符

1、加减乘除

2、取模运算符:%

  • 用来计算余数(负数可以取模,负数也可以被取模,小数也可以取模)
public class ModCalc {
    public static void main(String[] args) {
        int num = 10;
        System.out.println(num % 2);
        System.out.println(num % -3);
        System.out.println(num % 4);
        System.out.println(num % 5);
        System.out.println(num % -6);
    }
}

3、整数的除法运算 

  • int除以int还是int,不会变成浮点数
public class ModCalc {
    public static void main(String[] args) {
        //        int num = 10;
        //        int num1 = 3;
        //        float num2 = 3.0f;
        System.out.println(10 / 3); // 3
        System.out.println(10 / 3.0); // 3.3333333
    }
}

4、比较运算符

  •      >      >=      <=      !=     ==

5、布尔运算符

  • !:非运算符,not运算符。!true是false,!false是true,可以理解为取反
  • &:且运算符,and运算符。true&true是true,true&false是false
  • &&:且且运算符,andand运算符。运算结果和&一样
  • |:或运算符,or运算符。true|false是true,false|false是false,true|true是true
  • ||:或或运算符,oror运算符。运算结果和|一样

6、小括号运算符

7、运算符优先级

  • ()
  • !
  • *   /   %
  • + -
  • >    >=    <   <=
  • ==
  • !=
  • &    &&    |    ||
  • =
  • 等号  <  布尔运算符  <  比较运算符  <  算数运算符

8、按位运算符

  • 按位并(AND):&
  • 按位或(OR):|
  • 按位异或(XOR):^
  • 按位取反:~
  • 不会改变原本的变量的值,要改变需要重新赋值

9、位移运算符

  • >>:符号位不对,其余位右移,符号位后边正数补0,负数补1.又称带符号右移
  • >>>:符号位一起右移,左边没有补0,又称无符号右移
  • <<:左移,右边补0.左移没有带符号位一说,因为符号位再最左侧
  • 不会改变原本的变量的值,要改变需要重新赋值

六、转义符语法和常用的转义符

  • \n      换行符
  • \"       双引号
  • \t       制表符
  • \uXXXX    unicode编码对应的字符

猜你喜欢

转载自blog.csdn.net/m0_47135993/article/details/128044279