【java基础】02-java基本语法

目录

2.1. 关键字和保留字

1. 关键字

2. 保留字

2.2. 标识符

1. 定义

2. 标识符定义规则

3. 命名规范

2.3. 变量

1. 概念

2. 分类

3. 基本数据类型

4. 基本数据类型转换

5. String

6. 进制转换

2.4 运算符

1. 算术运算符

2. 赋值运算符

3. 比较运算符

4. 逻辑运算符

5. 位运算符

6. 三元运算符

2.5 程序流程控制

1. 顺序结构

2. 分支结构

3. 循环结构

4. 特殊关键字


2.1. 关键字和保留字

1. 关键字

定义:被Java语言赋予了特殊含义,用做专门用途的字符串(单词)。

特点:关键字中所有字母都为小写。

官方地址: https://docs.oracle.com/javase/tutorial/java/nutsandbolts/_keywords.html

官方发布的所有关键字:

 

2. 保留字

现有Java版本尚未使用,但以后版本可能会作为关键字使用。自己命名标识符时要避免使用这些保留字。(goto, const)

2.2. 标识符

1. 定义

Java 对各种变量、方法和类等要素命名时使用的字符序列称为标识符。 (凡是自己可以起名字的地方都叫标识符。如类名、变量名、方法名、接口名等)

2. 标识符定义规则

1) 由26个英文字母大小写,0-9 ,_或 $ 组成

2) 数字不可以开头。

3) 不可以使用关键字和保留字,但能包含关键字和保留字。

4) Java中严格区分大小写,长度无限制。

5) 标识符不能包含空格。

3. 命名规范

包名:多单词组成时所有字母都小写:xxxyyyzzz

类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz

变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz。

常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ

2.3. 变量

1. 概念

用于在内存中保存数据。是程序中最基本的存储单元。

包括:变量类型、变量名、存储值

注:变量只在其作用域内有效。

2. 分类

1) 按数据类型:

2) 按声明位置:

在方法体外,类体内声明的变量称为成员变量;在方法体内部声明的变量称为局部变量

3. 基本数据类型

1) 整型:

注:Long变量必须以l或L结尾。( long l1 = 465465L; )

2) 浮点型:

float存储数字可表示为:a\times 1.b\times 2^{c}

a符号位(1位),b尾数部分(23位),c指数部分(1位符号位,7位值)

注:float变量必须以f或F结尾。

3) char:(2字节)

表示方式:

  • 单引号表示。 
  • java中还允许使用转义字符‘\’来将其后的字符转变为特殊字符型常量。 Ø
  • 直接使用 Unicode 值来表示字符型常量:‘\uXXXX’。其中,XXXX代表一个十六进制整数。如:\u000a 表示 \n。

注:char类型是可以进行运算的。因为它都对应有Unicode码。

补充:编码规则

 

 

命令行编译时采用的是GBK编码。

4) boolean:True / False

Java虚拟机中没有任何供boolean值专用的字节码指令,Java语言表达所操作的boolean值,在编译之后都使用java虚拟机中的int数据类型来代替:true用1表示,false用0表示。

4. 基本数据类型转换

  • 自动类型转换:容量小的类型自动转换为容量大的数据类型。数据类型按容量大小排序为:

注:当把任何基本数据类型的值和字符串(String)进行连接运算时(+),基本数据类型的值将自动转化为字符串(String)类型。

  • 强制类型转换:自动类型转换的逆过程。将容量大的数据类型转换为容量小的数据类型。

需要用强制转换符:(),但可能造成精度降低或溢出。

通常,字符串不能直接转换为基本类型,但通过基本类型对应的包装类则可以实现把字符串转换成基本类型。 如: String a = “43”; int i = Integer.parseInt(a);

补充:整型常量默认为int型,浮点型常量默认为double型。

5. String

  • String属于引用数据类型。使用方式与基本数据类型一致。例如:String str = “abcd”;
  • 一个字符串可以串接另一个字符串,也可以直接串接其他类型的数据。结果仍是String。

6. 进制转换

 

二—>十:乘以2的幂数

十—>二:除以2取余数

二—>八/十六:3/4位二进制作为八/十六进制的1位

八/十六—>二:八/十六进制的1位转换为3/4位二进制

 java在Integer中实现了转换的方法。

toHexString(int i)  toOctalString(int i)   toBinaryString(int i)

2.4 运算符

1. 算术运算符

注:1) 如果对负数取模,可以把模数负号忽略不记,如:5%-2=1。 但被模数是负数则不可忽略。取模结果符号与被模数一致。此外,取模运算的结果不一定总是整数。

2) 对于除号“/”,整数之间做除法时,只保留整数部分而舍弃小数部分。

2. 赋值运算符

=   +=   -=   *=    /=   %=

支持连续赋值。

3. 比较运算符

4. 逻辑运算符

逻辑运算符用于连接布尔型表达式。

  • “&”和“&&”的区别: 

单&时,左边无论真假,右边都进行运算;

双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。

5. 位运算符

注:1) 没有<<<运算符。

2) 操作的都是整型变量。

6. 三元运算符

(表达式1和2数据类型相同)

例如,获取两个数较大值:max = (m > n)? m : n;

运算符的优先级:

2.5 程序流程控制

1. 顺序结构

2. 分支结构

  • if else:

  • switch case:

注:1) break语句用来在执行完一个case分支后使程序跳出switch语句块;如果没有break,程序会顺序执行到switch结尾。

2) switch(表达式)中表达式的值必须是下述几种类型之一:byte,short,char,int,枚举 (jdk 5.0),String (jdk 7.0);

l  3) case子句中的值必须是常量,不能是变量名或不确定的表达式值;

补充:输入输出

输入:import java.util.Scanner;

      Scanner scan = new Scanner(System.in);

      int a = scsn.nextInt();  //其他数据类型也有相应的方法

输出:System.out,println();

3. 循环结构

  • for:

  • while:

  • do while:

4. 特殊关键字

break:

continue:

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值