JavaSE基础篇—数据类型和运算符

时间:2021-08-17 02:44:56

 

 本章知识点内容概括

JavaSE基础篇—数据类型和运算符

JavaSE基础篇—数据类型和运算符

数据类型: 

  1.基本数据类型

    数值型

      整数类型

        byte(128~127),占1个字节的储存间

        short(-2^15~2^15-1),占2个字节

        int(默认类型-2^31~2^31-1,大约21亿),占4个字节

        long(-2^63~2^63-1),占8个字节,声明long类型是在末尾+l/L(大小写L)

      整数类型中的进制转换问题:

        1.二进制(0~1)转十进制(0~9)     

         eg:二进制 1101
          1*2^3 + 1*2^2 + 0*2^1 + 1*2^0
          = 8 + 4 + 0 + 1
          = 13

        2.八进制(0~7)转10进制

         eg:八进制12

          1*8^1+2*8^0

          =10

        3.十进制转二进制

         eg:十进制13  转后为1101

        JavaSE基础篇—数据类型和运算符

      浮点类型

        float(占4个字节的存储空间,是单精度类型,约小数点后7位,声明float类型时末尾+f/F),

        double(默认类型,占8个字节的存储空间,双精度类型,是float精度的2倍)

    字符型(char)

       单引号表示字符常量('A'),Unicode编码被设计用来处理各种语言的所有文字,它占2个字节,可允许有65536个字

       符;ASCII码占1个字节,可允许有128个字符(最高位是0),是Unicode编码表中前128个字符。(ASCII表可百度)

        char类型在内存中储存的时该字符的Unicode值,所有char类型可以当作int类型来处理。

    布尔型(boolean:true/false)用来判断逻辑条件,一般用于程序流程控制

  2.引用数据类型

    类(class)

    接口(interface)

    数组

  注意事项:

    1.Java是一种强类型语言,每个变量都必须声明其所属类型。

    2.Java变量是程序中最基本的储存单元,其元素包含:变量类型(基本类型或者引用类型)  变量名(合法的标识符)  作用域

      (for example:type  varName  [=value] [{,varName[=value]}])

    3.final修饰的变量只能被初始化一次,变量名必须全部大写,多个单词加下划线区分

      (foe example:   public static final int MAX_VALUE;)

    4.命名规范:变量和方法名:首字母小写和驼峰原则(getName);类名:首字母大写和驼峰原则(GoodMen)

运算符

  Java支持的运算符:

    1.算数运算符:+ - * / % ++ --

      整数运算:默认是int类型,两个操作数有一个是long,结果为long,没有long类型则为int

      浮点运算:默认是double类型,有一个是double类型,结果为double,两个都为float类型,结果为float类型

      ++num和num++的区别:前者是先自身+1再参与到接下来的运算中,后者是先参与运算,运算后自身+1

    2.赋值运算符: =  +=  -=  *=  /=  %=

    3.关系运算符:boolean类型,结果为true或者false

    4.比较运算符:比较的结果是boolean值,浮点类型一般不进行比较,因为有精度的丢失

    5.逻辑运算符:布尔值或者布尔表达式才能进行逻辑运算

      JavaSE基础篇—数据类型和运算符

      &和&&的区别:&”:无论任何情况,“&”两边的表达式都会参与计算。

             “&&”: 当“&&”的左边为false,则将不会计算其右边的表达式。即左false则false

      |和||的区别:同&和&&的区别

    6.位运算符(了解):

      JavaSE基础篇—数据类型和运算符

      位运算符是对操作数以二进制byte位为单位进行操作和运算,操作数和结果都是整数。

      如果操作数是char,byte,short,位移动作发生前会自动升为int类型,运算结果也是int类型。

    7.条件运算符(三目运算符):

      表达式:       表达式1(布尔表达式)  ? 表达式2  :表达式3

      含义是:如果表达式1为true,结果为表达式2;如果表达式1为falsse,结果为表达式3

  运算时注意事项:

    在赋值运算和算数运算时,要求数据类型必须一样,否则要进行数据类型转换。

    数据类型转换分为自动转换(左边类型>右边类型)和强制转换(左边类型<右边类型)。

      JavaSE基础篇—数据类型和运算符

    运算类型以左边*的类型为运算类型,右边也是*的类型,这是自动转换;

    byte —> short,char—>int —>long—>float —>double是类型由低到高

    强制转换:,强转要注意精度的丢失

    for example:int n = (int)3.14

    

练习:

  1.输入自己的名字,年龄和性别,分别用不同的变量接收,并将输入的信息做输出。 

public class Text1 {
public static void main(String[] args) {
String name;
int age;
String gander;
//创建扫描器
Scanner input = new Scanner(System.in);
System.out.println("Please input your name here:");
name = input.nextLine();
System.out.println("Please input your age here:");
age = input.nextInt();
System.out.println("Please input your gander here:");
gander = input.next();
System.out.println("The computer recorded that:");
System.out.println("Your name is:"+name);
System.out.println("Your age is:"+age);
System.out.println("Your gander is:"+gander);
}

}

  2.输入圆形半径,求圆形的周长和圆形的面积,并将结果输出

public class Text1 {
public static void main(String[] args) {
double r;
double l;//周长
double s;//面积
Scanner input = new Scanner(System.in);
System.out.println("请输入圆的半径:");
r = input.nextDouble();
l = 2 * Math.PI * r;
s = Math.PI * r * r;
System.out.println("该圆的半径是:"+r);
System.out.println("该圆的周长是:"+l);
System.out.println("该圆的面积是:"+s);
}

}