美文网首页
【Java 入门2】Java 基础语法、数据类型

【Java 入门2】Java 基础语法、数据类型

作者: 黄同学2019 | 来源:发表于2019-01-14 20:26 被阅读6次

    变量的定义和基本使用

    • 变量的定义:表示存储空间,可用来存放某一类型的常量,没有固定值,并可以重复使用,也可以用来存储某种类型的未知数据。

    • 变量的特点:

    ① 占据着内存中的某一块存储区域

    ② 该区域有自己的名称(变量名)和类型(数据类型);

    ③ 可以被重复使用;

    ④ 该区域的数据可以在同一类型范围内不断变化;

    • 变量的定义方法:
    1. 先定义变量,再赋值:
      • 数据类型 变量名;

    ​ 变量名 = 值;

    int a;
    a = 10;
    

    或在声明时同时赋值: 数据类型 变量名 = 初始化值;

    int a = 20;
    

    注:格式是固定的,记住格式,以不变应万变。

    不推荐:同时定义多个变量.

    解决两个操作数求和,差,积,商的问题:

    变量分类和作用域及使用规则

    • 变量的分类:

      随着变量定义在类中的位置不同,故把变量分成两大类:

      • 成员变量:直接定义在类里的变量,方法外面,又称为全局变量或字段。

      • 局部变量:变量除了成员变量之外,其他就是局部变量。根据定义的位置不同有3种表现形式:

        1. 方法形参
        2. 方法内变量
        3. 代码块变量
    • 变量作用域:

    指变量的存在范围,只有在这个范围内,程序代码才能访问它。当一个变量被定义时,它的作用域就确定了:

    作用域是定义开始到定义所在的花括号结束;

    • 变量使用规则:

    1.变量必须先声明,并且初始化后才能使用

    2.声明变量必须有数据类型

    3.同一作用域内变量不能重复定义

    Java 数据类型和分类

    如图:

    1547465949363

    前面谈到变量的时候,说变量是有类型的,那么 Java 数据有多少和哪些类型呢?总得来说,分成两种:

    ① 基本数据类型,又称为 原生数据类型;

    ② 引用数据类型,又称为 对象数据类型;

    Java中定义了4类,共8种基本数据类型

    ① 整数型: byte、short、int 、long

    ② 浮点数型:float、double

    ③ 字符型: char

    ④ 布尔型: boolean

    如下图:

    1547466084523

    说明:

    1. int 类型: 的四种表示形式:

    ① 二进制整数:0B或0b开头(Java7的新特性),如:int a = 0B110;

    ② 八进制整数:要求以0开头,如 int a = 012;

    ③ 十进制整数:如:int a = 17;

    ④ 十六进制整数:要求0X或0x开头,如int a = 0x12;

    Java语言的整型常量默认是int型,声明long型变量后加上‘l’或‘L,因小写的l容易和数字1相混淆,建议使用大写L。

    默认情况下,一个整型的字面量默认是int类型.

    1. Boolean 类型:只有 true 和 false ,区别于 C 语言中 0 表示false,非 0 表示 true

    2. 浮点数类型 (float 和 double )

      • Java的浮点类型常量有两种表现形式:

        1. 十进制形式: 例如:3.14 ,168.0, .618
        2. 科学计数法形式: 例如:3.14e2, 3.14E2, 1000E-2
      • 科学计数法表达式返回的结果是double类型。

      • 默认情况下,一个小数类型的字面量默认是double类型.
        若要声明一个常量为float型,则需在常量后加上f 或 F,double常量后面的D或d可省略。

    3. char 类型

      表示16位的无符号整数或者Unicode字符,Java对字符采用Unicode字符编码。

      Unicode收集了世界上所有语言文字中的字符(符号),是一种跨平台的编码方式,Java的字符占两个字节,可以表示一个汉字。

    • char 常量有3种表示形式:

    ① 直接使用单个字符来指定字符常量,格式如'◆'、'A','7',注意使用单引号括起来

    ② 直接作为十进制整数数值使用,但是数据范围在[0,65535],格式如97,但是打印出来的值依然是ASCII码表对于的符号,如97打印出来是字符a。

    ③ 和2一样,只不过表示的是16进制的数值,格式如'\uX',X表示16进制整数;如:97的16进制是61。那么表示为‘\u0061’打印出来也是a。

    因此,所以有人说char本质上也是整型,也是有道理的。

    基本数据类型转换

    两种数据类型的转换操作:

    1. 自动类型转换.(把小类型转换为大类型)

    2. 强制类型转换.(把大类型转换为小类型),可能造成溢出和精度丢失

    如图:

    1547467093727

    表达式类型的自动提升

    当一个算术表达式中包含多个基本数据类型(boolean除外)的值时,整个算术表达式的数据类型将在数据运算时出现类型自动提升,其规则是:

    所有的byte、short、char类型被自动提升到int类型;

    整个表达式的最终结果类型被提升到表达式中类型最高的类型

    最常用的引用类型 String

    1. 除了8种基本数据类型,其他所有类型都是引用数据类型,包括类、接口、数组。

    2. 引用数据类型默认初始值都是null

    3. String是一个类,表示字符串(后面详讲),所谓字符串,就是一串字符,也就是N个字符连接在一起(N可以表示0或多个),好比羊肉串。

    字符表示一个符号,得使用单引号括起来.

    字符串表示多个符号,都得使用 "" 括起来的,连接字符串使用 “+”符号。

    字符串拼接:字符串和任意数据类型相连接,结果都是字符串类型.
    
    转义符号练习: 输出:  "你好世界" 
    System.out.println(8 + 7 + "Hello");//结果是 15Hello
    System.out.println("Hello" + 7 + 8);//结果是 Hello78
    System.out.println(7 + "Hello" + 8);//结果是 7Hello8
    String str = 17 + "ABC";//组成一个新的字符串 17ABC
    System.out.println(str);
    String str2 = (String)17 + "ABC";//编译错误: 不可转换的类型
    

    预览上面的结果,请点击 在线预览

    相关文章

      网友评论

          本文标题:【Java 入门2】Java 基础语法、数据类型

          本文链接:https://www.haomeiwen.com/subject/tkzjdqtx.html