数据类型和运算符

关键字:

具有特殊含义、被保留的、不能随意使用的字符,这样的字符我们就称为关键字

添加注释

注释:就是对代码的解释和说明,其目的就是其他开发者能轻松的了解代码。注释是不影响程序的编译和运行。
java中的注释有三种:

  • ​ 单行注释以 //开头 换行结束
  • ​ 多行注释以"/"开头,以"/"结束
  • ​ 文档注释以"/**"开头,以"*/"结束

标识符

标识符:一般是指在程序中,我们自定义的内容。比如说类的名字(HelloWorld)、方法的名字(main)和变量的名字等等,都是标识符。

​标识符的命名规则:硬性要求

  • ​标识符可以包含英文字母26个(区分大小写)、0-9数字、_(下划线)、$(美元符号)
  • ​标识符不能以数字开头
  • ​标识符不能是关键字

​ 命名规范:软性建议

  • ​建议类名首字母大写,后面的每个单词首字母建议大写(大驼峰命名法)

  • ​方法名首字母小写,后面的每个单词首字母建议大写(小驼峰命名法)

  • 变量名,全部小写。

  • ​标识符尽量达到见名知意的效果。

  • 常量

常量:在程序的运行期间,固定不变的量。

常量的分类:

  • 字符串常量: 凡是用双引号引起来的部分,叫做字符串的常量 "今天是我学习Java的第二天"
  • 整数常量: 直接写上的数字,没有小数点。如 18、28、20、-5
  • 浮点数(小数)常量: 直接写上的数字,有小数点。如3.14、0.0
  • 字符常量: 凡是用单引号引起来的单个字符,就叫做字符常量 如 '男' 、 '女'、'A'、'9'
  • 布尔常量: 只有true、false。
  • 空常量: null。代表没有任何数据,在内存中不存在。空常量不能直接用来打印输出

变量

​ 变量:在程序运行期间,内容可以发生变化的量。

数学中, 3 + 5 = 8---> x + 5 = 8 或者 3 + x = 8

​ 在程序中,可以使用字母保存数字的方式进行运算,提高计算能力,可以解决更多的实际问题。比如x保存3,x也可以保存5,x保存数字(数据)是可以发生改变的,我们一般称这个x为变量。

备注:java中,一个变量每次只能保存一个数据,而且要明确保存的数据类型。

数据类型

​分类:

  • ​ 基本数据类型:如 整数、浮点数、字符、布尔

  • ​ 引用数据类型 如 类、数组、接口等

    基本数据类型:

    ​四类八种基本数据类型:

    数据类型 关键字 内存大小 取值范围
    字节型 byte 1个字节 1B -128~127 2^7-1
    短整型 short 2个字节 2B -32768~32767 2^15-1
    整形 int 4个字节 4B 21开头的十位数 2^31-1
    长整型 long 8个字节 8B 92开头的19位数 2^63-1
    单精度浮点数 float 4个字节 4B -1.4013E-45~3.4028E+38
    双精度浮点数 double 8个字节 8B 4.9E-324~1.7977E+308
    字符型 char 2个字节 2B 0~65535
    布尔类型 boolean 1个字节 1B true、false

    备注:java中的默认数据类型:整数类型为int,浮点数类型为double。

    计算机基础知识:

    ​ 二进制:计算机中的数据全部采用的是二进制数表示 ,只包含0、1两个数,逢二进一, 1+1=10。

    ​ 每一个1或者每一个0,叫做一个bit(比特)(位)

    ​ 字节:

    ​ 字节称为我们计算机中最小的存储单元。计算机中存储任何的数据,都是以字节的形式进行存储。

    ​ 1个字节 = 8个比特(二进制位) 0000-0000表示一个字节,写成1byte或者1B

    • ​ 8bit = 1B

    • ​ 1024B = 1KB

    • ​ 1024KB = 1MB

    • ​ 1024MB = 1GB

    • ​ 1024GB = 1TB

    • ​ 1024TB = 1PB

    • ​ 1024PB = 1EB

    • ​ 1024EB = 1ZB

      变量的定义

      变量定义具备三元素:数据类型、变量名、数据值。

      格式:

      ​变量的数据类型 变量名 = 变量值;

      变量定义注意事项

      使用变量的时候,需要注意的事项如下:
      1.创建多个变量的时候,变量之间的名称不可以重复;
      2.对于float和long类型来说,变量的数据值后面需要添加字母F和L
      3.如果使用byte或者是short类型的变量,那么右侧的数据值不能超过左侧类型的范围。
      4.没有进行赋值的变量,不能直接使用,能够使用的变量一定是经过初始化(赋值)。
      5.变量的使用不能超出它对应的作用域。
      6.可以通过一个语句来创建多个变量,但是不建议使用。
      作用域---->{} 左半部分{ 代表作用域的起始位置
      右半部分} 代表作用域的结束位置

      转义字符

      ​ 一些具有特殊含义的字符,通过""来进行转义

      	  ---->一个制表符(占8位)  一个tab缩进
      

      ​ ---->一个换行符 newLine()

      ​ ----->一个回车符 按一下enter键

      ​  ---->退一格

      数据类型之间的转换

      ​ java程序中要求参与计算的数据,必须保证数据类型的一致性,当数据类型不一致的时候,将会发生数据类型转换。

      数据类型之间的转换分为两种:

      • ​ 自动类型转换(隐式)

        ​ 自动转换:将取值范围小的类型自动提升为取值范围大的类型。

        byte类型在内存中占1个字节,需要和int类型的变量做运算会自动提升为int类型,自动补充3个字节,计算的结果自然就是int类型。

      • ​ 强制类型转换(显式)

        ​ 强制类型转换:将取值范围大的类型转换成取值范围小的类型

        ​ 格式:数据类型 变量名 = (数据类型) 被转数据值;

      ASCII(美国信息交换标准代码)

      ​数字和字符的对照关系表(编码表)

      ASCII编码:American Standard Code for Information Interchange

      ​ Unicode编码:万国码。也是数字和字符符号的对照关系表,开头0-127部分和ASCII完全一样,但是从128开始包含更多的字符。

      ​需要记忆 :

      ​ 48----->‘0’

      ​ 57------>'9'

      65----->'A'  
      

      ​ 90------>'Z'

      ​ 97----->'a'

      ​ 122--->'z'

      在计算机内部运算采用的是二进制的方式,里面的数据都是二进制0、1格式,如何让计算机识别人类文字

      就出现了编码表的概念。

      ​ 编码表:就是将人类的文字和一个十进制数进行对应起来组成的一张表格。

​ 将所有的英文字母、数字、符号都和十进制数进行对应,产生了世界上第一张编码表(ASCII)

​ 备注:在char和int类型进行计算的过程中,char类型的字符会被转成int类型,需要查询编码表

运算符

  • ​ 算术运算符

    算术运算符 含义
    + 加法运算、字符串拼接运算、正数
    - 减法运算、负数
    * 乘法运算、通配符
    / 除法运算(求商数)
    % 除法运算(取余数、取模运算)
    ++ 自加一运算
    -- 自减一运算
  • ​ 比较运算符

    比较运算符 含义
    == 相等比较
    < 小于比较
    > 大于比较
    >= 大于等于比较
    <= 小于等于比较
    != 不等于比较

    备注:比较运算符,运算的结果都是布尔类型值true、false。

    注意事项:

    ​ 如果我们进行多次判断,不能连着写。

    ​ 数学当中, a < 3 a >-1------> -1 < a < 3

    ​ 在程序当中,【不允许】这种操作。

  • ​ 赋值运算符

    赋值运算符 含义
    = 赋值
    += 加等于
    -= 减等于
    *= 乘等于
    /= 商等于
    %= 模等于

    备注:

    1. 重点掌握【=】基本赋值运算符
    2. 剩下的都是复合赋值运算符
    3. 只有变量才可以使用赋值运算符,常量不能进行赋值
    4. 复合赋值运算符其中隐含了一个强制类型转换。
  • ​ 逻辑运算符

    逻辑运算符 含义
    && 短路与 1.如果两边都是true,结果为true;2.如果一边为false,结果就是false
    || 短路或 1.如果两边任意一边是true,结果则为true,否则为false
    ! 取反(取非) 如果为false,结果为true;反之则为false。
    ^ 异或 如果两边有且只有一个为true,结果则为true,否则为false。

位运算符

运算符 含义 示例
<< 左移 5 << 2 = 20 ---> 5 * 2^2 = 5 * 4 = 20
>> 右移 5 >> 1 = 2 ---> 5 / 2^1 = 5 / 2 = 2
>>> 无符号右移 5 >>> 1 = 2---> 5 / 2^1 = 5 / 2 = 2
& 与运算(只要有一个为0,运算结果则为0,否则为1) 5 & 3 = 1
| 或运算(只要有一个为1,运算结果就为1,否则为0) 5 | 3 = 7
^ 异或运算(如果两个数值一样,运算结果就为0,否则为1) 5 ^ 3 = 6
~ 取反运算(了解) ~6--->0110 = -7

备注:位运算计算机底层采用的对整数进行二进制运算。

​ 【没有无符号左移位运算符】

二进制整数表示:原码、反码、补码

三目运算符

​ ?:

三目运算符格式:

​ 布尔类型表达式 ? 真的结果值 : 假的结果值

三目运算符格式:
数据类型 变量名 = 布尔类型表达式 ? 真的结果值 : 假的结果值

计算方式:

​如果布尔类型表达式结果是true,三目运算符运算的结果为紧邻?后面的值

如果布尔类型表达式结果是false,三目运算符运算的结果为紧邻:后面的值。

备注:当三目运算符运算参与有其他的运算(如赋值运算),要求三目运算符中的 ?和: 后面的值的【数据类型保持一致】。

原文地址:https://www.cnblogs.com/luayan/p/13966769.html