Java基础1——变量与数据类型
程序员文章站
2022-06-03 23:52:29
...
Java基础1——变量与数据类型
2021-7-8
Java变量与数据类型
1、标识符命名规则
- 标识符以由大小写字母、数字、下划线(_)和美元符号($)组成,但是不能以数字开头。
- 大小写敏感
- 不能与Java语言的关键字重名
- 不能和Java类库的类名重名
- 不能有空格、@、#、+、-、/ 等符号
- 长度无限制
- 应该使用有意义的名称,达到见名知意的目的
- 不可以是 true 和 false
2、java关键字
关键字 | 含义 |
---|---|
package | 指定包名 |
import | 引用类 |
class | 定义类 |
interface | 定义接口 |
abstract | 定义抽象类或抽象方法 |
new | 创建对象 |
this | 示例/对象本身 |
super | 引用示例/对象父类 |
void | 无返回 |
byte | 字节型 |
char | 字符型 |
short | 短整型 |
int | 整型 |
long | 长整型 |
float | 单精度浮点数 |
double | 双精度浮点数 |
boolean | 布尔型 |
enum | 枚举 |
strictfp | 精确浮点数 |
extends | 继承类 |
implements | 实现接口 |
private | 私有权限,本类可用 |
default | 默认权限,本类和本包的类可用 |
protected | 保护权限,本类和本包的类、子类可用 |
public | 公开权限,本类和本包的类、子类,其他包的类可用 |
final | 类不可被继承,方法不可被重写,常量 |
static | 静态属性 |
synchronized | 线程同步 |
if | 如果 |
else | 或者 |
for | for循环 |
do | do-while循环 |
while | while循环,do-while循环 |
switch | switch,case分支 |
case | switch,case分支 |
break | 结束最近一层的循环 |
continue | 跳过本次循环体,进入下次循环 |
return | 返回 |
try | 异常代码捕获 |
catch | 异常处理 |
finally | 最后处理 |
throw | 手动抛出一个异常 |
throws | 声明要抛出的异常 |
instanceof | 判断类型 |
volatile | 线程可见(原子性) |
native | 调用底层(C++,本地方法等) |
assert | 断言 |
var | 任意类型,jdk10新增 |
goto | 跳转(保留字) |
const | 常量(保留字) |
true | 真 |
false | 假 |
null | 空值 |
3、Java数据类型分类
3.1、基本数据类型
char可以存储中文
数据类型 | 包装类 | 二进制位数 | 最小值 | 最大值 | 默认值 |
---|---|---|---|---|---|
boolean | Boolean | 1 | false | true | false |
byte | Byte | 8 | Byte.MIN_VALUE=-128 | Byte.MAX_VALUE=127 | 0 |
char | Character | 16 | Character.MIN_VALUE=0 | Character.MAX_VALUE=65535 | ‘u0000’ |
short | Short | 16 | Short.MIN_VALUE=-32768 | Short.MAX_VALUE=32767 | 0 |
int | Integer | 32 | Integer.MIN_VALUE=-2147483648 | Integer.MAX_VALUE=2147483647 | 0 |
long | Long | 64 | Long.MIN_VALUE=-9223372036854775808 | Long.MAX_VALUE=9223372036854775807 | 0L |
float | Float | 32 | Float.MIN_VALUE=1.4E-45 | Float.MAX_VALUE=3.4028235E38 | 0.0f |
double | Double | 64 | Double.MIN_VALUE=4.9E-324 | Double.MAX_VALUE=1.7976931348623157E308 | 0.0d |
public class DataType {
public static void main(String[] args) {
test();
}
public static void test() {
// byte
System.out.println("基本类型:byte 二进制位数:" + Byte.SIZE);
System.out.println("包装类:java.lang.Byte");
System.out.println("最小值:Byte.MIN_VALUE=" + Byte.MIN_VALUE);
System.out.println("最大值:Byte.MAX_VALUE=" + Byte.MAX_VALUE);
System.out.println();
// short
System.out.println("基本类型:short 二进制位数:" + Short.SIZE);
System.out.println("包装类:java.lang.Short");
System.out.println("最小值:Short.MIN_VALUE=" + Short.MIN_VALUE);
System.out.println("最大值:Short.MAX_VALUE=" + Short.MAX_VALUE);
System.out.println();
// int
System.out.println("基本类型:int 二进制位数:" + Integer.SIZE);
System.out.println("包装类:java.lang.Integer");
System.out.println("最小值:Integer.MIN_VALUE=" + Integer.MIN_VALUE);
System.out.println("最大值:Integer.MAX_VALUE=" + Integer.MAX_VALUE);
System.out.println();
// long
System.out.println("基本类型:long 二进制位数:" + Long.SIZE);
System.out.println("包装类:java.lang.Long");
System.out.println("最小值:Long.MIN_VALUE=" + Long.MIN_VALUE);
System.out.println("最大值:Long.MAX_VALUE=" + Long.MAX_VALUE);
System.out.println();
// float
System.out.println("基本类型:float 二进制位数:" + Float.SIZE);
System.out.println("包装类:java.lang.Float");
System.out.println("最小值:Float.MIN_VALUE=" + Float.MIN_VALUE);
System.out.println("最大值:Float.MAX_VALUE=" + Float.MAX_VALUE);
System.out.println();
// double
System.out.println("基本类型:double 二进制位数:" + Double.SIZE);
System.out.println("包装类:java.lang.Double");
System.out.println("最小值:Double.MIN_VALUE=" + Double.MIN_VALUE);
System.out.println("最大值:Double.MAX_VALUE=" + Double.MAX_VALUE);
System.out.println();
// char
System.out.println("基本类型:char 二进制位数:" + Character.SIZE);
System.out.println("包装类:java.lang.Character");
// 以数值形式而不是字符形式将Character.MIN_VALUE输出到控制台
System.out.println("最小值:Character.MIN_VALUE="
+ (int) Character.MIN_VALUE);
// 以数值形式而不是字符形式将Character.MAX_VALUE输出到控制台
System.out.println("最大值:Character.MAX_VALUE="
+ (int) Character.MAX_VALUE);
}
}
3.2、引用数据类型
类(class)、接口(interface)和数组(array),枚举(enum),注解(Annotation)
4、ASCII码表
ASCII值 | 控制字符 | ASCII值 | 控制字符 | ASCII值 | 控制字符 | ASCII值 | 控制字符 |
---|---|---|---|---|---|---|---|
0 | NUL | 32 | (space) | 64 | @ | 96 | 、 |
1 | SOH | 33 | ! | 65 | A | 97 | a |
2 | STX | 34 | ” | 66 | B | 98 | b |
3 | ETX | 35 | # | 67 | C | 99 | c |
4 | EOT | 36 | $ | 68 | D | 100 | d |
5 | ENQ | 37 | % | 69 | E | 101 | e |
6 | ACK | 38 | & | 70 | F | 102 | f |
7 | BEL | 39 | ’ | 71 | G | 103 | g |
8 | BS | 40 | ( | 72 | H | 104 | h |
9 | HT | 41 | ) | 73 | I | 105 | i |
10 | LF | 42 | * | 74 | J | 106 | j |
11 | VT | 43 | + | 75 | K | 107 | k |
12 | FF | 44 | , | 76 | L | 108 | l |
13 | CR | 45 | - | 77 | M | 109 | m |
14 | SO | 46 | . | 78 | N | 110 | n |
15 | SI | 47 | / | 79 | O | 111 | o |
16 | DLE | 48 | 0 | 80 | P | 112 | p |
17 | DCI | 49 | 1 | 81 | Q | 113 | q |
18 | DC2 | 50 | 2 | 82 | R | 114 | r |
19 | DC3 | 51 | 3 | 83 | X | 115 | s |
20 | DC4 | 52 | 4 | 84 | T | 116 | t |
21 | NAK | 53 | 5 | 85 | U | 117 | u |
22 | SYN | 54 | 6 | 86 | V | 118 | v |
23 | TB | 55 | 7 | 87 | W | 119 | w |
24 | CAN | 56 | 8 | 88 | X | 120 | x |
25 | EM | 57 | 9 | 89 | Y | 121 | y |
26 | SUB | 58 | : | 90 | Z | 122 | z |
27 | ESC | 59 | ; | 91 | [ | 123 | { |
28 | FS | 60 | < | 92 | \ | 124 | | |
29 | GS | 61 | = | 93 | ] | 125 | } |
30 | RS | 62 | > | 94 | ^ | 126 | ~ |
31 | US | 63 | ? | 95 | — | 127 | DEL |
6、转义字符
符号 | 字符含义 |
---|---|
\n | 换行 (0x0a) |
\r | 回车 (0x0d) |
\f | 换页符(0x0c) |
\b | 退格 (0x08) |
\0 | 空字符 (0x0) |
\s | 空格 (0x20) |
\t | 制表符 |
" | 双引号 |
’ | 单引号 |
\ | 反斜杠 |
\ddd | 八进制字符 (ddd) |
\uxxxx | 16进制Unicode字符 (xxxx) |
7、数据类型的转换
7.1、自动类型转换
必须满足转换前的数据类型的位数要低于转换后的数据类型
7.2、强制类型转换
从大类型到小类型之间的转换
目标类型 变量名 = (目标类型)源类型变量名;
7.3、隐含强制类型转换
- 整数的默认类型是 int
- 小数默认是 double 类型浮点型,在定义 float 类型时必须在数字后面跟上 F 或者 f
8、贴图小工具
Snipaste-2.5.6 百度云:https://pan.baidu.com/s/1kvsjzlGjcOV-gYAdke7EBA 提取码:2o2m
上一篇: Java核心类库5——异常
下一篇: Java基础4——数组