✨ 目录

    • ▷ 语法之注释
    • ▷ 语法之字面量
    • ▷ 语法之变量
    • ▷ 语法之变量注意事项
    • ▷ 语法之关键字和标识符
    • ▷ 数据存储的原理
    • ▷ 特殊数据存储的原理
    • ▷ 进制之间的转换
    • ▷ 程序中不同进制的写法
    • ▷ 基本数据类型
    • ▷ 强制类型转换
    • ▷ 算术运算符
    • ▷ 自增自减
    • ▷ 赋值运算符
    • ▷ 关系运算符
    • ▷ 逻辑运算符
    • ▷ 三元运算符
    • ▷ 下载官方API文档
    • ▷ 使用内置 Scanner 扫描包接收用户输入信息

▷ 语法之注释

  • 注释: 是写在程序中对代码进行解释说明的文字,方便自己和其他人查看,以便理解程序的
  • 注释分为 单行注释多行注释,注释的内容并不会被编译,所以 不会影响 代码的运行
  • 单行注释通过 // 进行标注,只能注释一行
  • 多行注释通过 /* 注释内容 */ 进行标注,可以注释多行
package tiny.geeker;/** * 文档注释:学习注释的语法 */public class Test {public static void main(String[] args) {// 单行注释:输出Hello WorldSystem.out.println("Hello World");/*Author: tinygeekerDate: 2023/11/10Desc: 多行注释:计算 1+2 的值*/System.out.println(1 + 2);}}

▷ 语法之字面量

  • 计算机是用来处理数据的,字面量就是告诉程序员,数据在程序中的书写格式
  • 分别有 整数小数字符字符串布尔值空值
  • 其中 整数小数 与数学中写法一致
  • 字符 需要用 单引号 包裹,必须有且仅能有一个字符
  • 字符串 需要用 双引号 包裹,内容可有可无
  • 布尔值 也就是真(true)假(false),只有两个值
  • 空值 是一个特殊的值,为 null,后面再讲
package tiny.geeker;public class Test {public static void main(String[] args) {// 整数System.out.println(520);// 小数System.out.println(13.14);// 字符System.out.println('爱');// 字符串System.out.println("飞兔小哥");// 布尔值System.out.println(true);System.out.println(false);}}

▷ 语法之变量

  • 变量 是用来记住程序要处理的数据的
  • 变量的定义格式:数据类型 变量名称 = 数据,例如 int age = 20
  • 其中 数据类型 是用来限制数据的形式,比如:int(整数类型)、double(小数类型)
  • 变量名称 建议首字母小写
  • 数据 是用来给变量赋值用的
package tiny.geeker;public class Test {public static void main(String[] args) {// 定义一个年龄的整数变量int age = 20;System.out.println(age);// 定义一个分数的小数变量double score = 59.5;System.out.println(score);}}

▷ 语法之变量注意事项

  • 第一: 变量要先声明才能使用
  • 第二: 变量是什么类型,就应该用什么类型的数据,否则会报错
  • 第三: 变量是从定义开始到 } 截止的范围内有效,且同一个范围内,多个变量名不能重复
  • 第四: 变量定义的时候可以不赋值,但是在使用的时候必须有值,否则报错

▷ 语法之关键字和标识符

  • 定义变量的时候,例如 int age = 20;其中 age 不能使用一些关键字,也就是 Java 语言自己用过的词,因为有特殊作用
  • 因此 关键字Java 用了的,不能用来做 类名 和 变量名,否则会报错
  • 常见的关键词有很多,比如 publicabstractcatchcaseintdoublebreakbyte 等等,虽然关键字很多,但是不用刻意去记住,因为编辑器中会报错的,如果报错要考虑到使用了这些关键词就行
  • 标识符就是写程序起的一些名字,比如变量名,需要注意的是,变量名 不能以数字开头,也不能用关键字,且 区分大小写

▷ 数据存储的原理

  • 计算机中的数据是以 二进制 进行存储的,不管是字符、图片还是音频,都是以二进制进行存储的
  • 而存储的最小单元称为 字节(byte),一个字节是使用8个二进制位组成的,也就是 1B = 8b
  • 十进制是逢十进一,因此二进制是逢二进一,因此 十进制的中的2 = 二进制中的10
  • 比如在计算器选择程序员专用,输入 2,将类型调整为 byte,可以看到总共占据了 8个二进制位,值为 0000 0010
  • 虽然上面说 十进制的中的2 = 二进制中的10,但是一个字节占 8 个位,所以不足的会默认补上 0,因为最终值为 0000 0010

▷ 特殊数据存储的原理

  • 其实字符、图片、音频都是存储的二进制数据
  • 其中字符存储的是 ASCII 码表的数值
  • 图片存储的是三原色的值,因为三原色可以用 0-255 的数值进行标识
  • 音频可以存储波形图,也就数值而已
  • 例:计算 'a' + 1 = 98,那是因为 aASCII 码表中的值为 97,就可以很好理解了


▷ 进制之间的转换

  • 虽然知道了存储数据用的是二进制,但是二进制非常不便于观察,因此平时用的都是十进制
  • 当然程序中,还发明了 八进制十六进制 来更好的观察和表示二进制
  • 八进制: 是每3位二进制作为一个单元,00、000、000,其中最小值为0,最大值为8,总共8个数字,成为 八进制
  • 十六进制: 是每4位二进制作为一个单元,0000、0000,其中最小值为0,最大值为15,依次用 0-9、A、B、C、D、E、F 来标识这16个数,称为 十六进制
  • 当然这些进制之间都是可以进行相互转换的
  • 十进制转二进制: 使用的是 除二取余法


▷ 程序中不同进制的写法

  • 二进制需要用 0B 或者 0b 打头
  • 八进制需要用 0 打头
  • 十六进制需要用 0X 打头

▷ 基本数据类型

  • 基本数据类型分为 4大类八种
  • 每种类型对应的数据范围是不同的,其中类型范围小的,可以直接赋值给类型范围大的


▷ 强制类型转换

  • 正常来说,将一个大类型的值赋值给小类型会报错,但是可以通过强制类型转换解决

▷ 算术运算符

  • 算术运算符包括 +(加)-(减)*(乘)/(除)%(取余数)
  • 需要注意的是:两个整数相除的结果还是整数加号也可以用来链接数字和字符串

▷ 自增自减

  • 可以通过 ++a 或者 a++ 实现变量自增 1
  • 可以通过 --a 或者 a-- 实现变量自减 1
  • 符号如果在前,是先运算再赋值,如果符号在后,是先赋值再运算


▷ 赋值运算符

  • 赋值运算符包括 +=(加等)-=(减等)*=(乘等)/=(除等)%=(余等)
  • 比如 b += a 就等于 b = b + a,其他的以此类推

▷ 关系运算符

  • 关系运算符包括 >(大于)>=(大于等于)<(小于)<=(小于等于)==(等于)!=(不等于),用来判断两者之间的关系,返回值为 truefalse

▷ 逻辑运算符

  • &(逻辑与): 比如 2>1 & 3>2 多个条件必须都是 true,结果才是 true;有一个是 false,结果就是 false
  • |(逻辑或): 多个条件中只要有一个为 true,结果就是 true
  • !(逻辑非): 取反,你真我假,你假我真。!true == false!false == true
  • ^(逻辑异或): 比如 2>1 ^ 3>1 前后条件的结果相同,就直接返回false,前后条件的结果不同,才返回 true

▷ 三元运算符

  • 三元运算符的格式:条件表达式 " />

    ▷ 下载官方API文档

    • 由于 java 中内置了很多的 API,可以直接拿来用,所以需要参考一下官方的 API 文档
    • 文档的下载地址,一般在下载 JDK 文件的下方,当然也可以直接在搜索引擎中检索 JDK API 即可

    ▷ 使用内置 Scanner 扫描包接收用户输入信息

    • 要使用内置 API,需要先通过 import 导入所需要的包
    • 然后通过 new 实例化后,即可使用该包中的功能了
    package tiny.geeker;import java.util.Scanner;public class Test {public static void main(String[] args) {// 实例化Scanner sc = new Scanner(System.in);// 接受用户输入指令System.out.println("请输入你的名字:");String name = sc.next();System.out.println("名字是:" + name);System.out.println("请输入你的年龄:");int age = sc.nextInt();System.out.println("年龄是:" + age);}}