1 package day1;
2
3
4 /**
5 * @Author: haifei
6 * java注释(单行多行同C++)、标识符命名规则、常量变量、数据类型及其转换
7 */
8
9 public class Demo1_0518 {
10 public static void main(String[] args) {
11 /**
12 * 文档注释
13 */
14
15 // 关键字的字母全部小写,如public、class、static等
16
17 /*
18 Java中标识符的组成规则:
19 由字母、数字、下划线“_”、美元符号“$”组成,第一个字符不能是数字
20 Java中标识符的命名约定:
21 小驼峰式命名:变量名、方法名
22 大驼峰式命名:类名
23 */
24
25 /*
26 字符串常量:"a"、"abc"、"中国"
27 字符常量:'a'、'5'、'B'、'中'
28 整数常量:-10、0、88
29 小数常量:-5.5、1.0、88.88
30 布尔常量:true和false
31 空常量:null
32 ps:除空常量外,其他常量均可使用输出语句直接输出
33 */
34
35 /*
36 计算机存储设备的最小信息单元叫比特位/位bit-->b
37 计算机中最基本的存储单元叫字节byte-->B
38 1字节是由连续的8个位组成
39 */
40
41 // Java中的数据类型包括基本数据类型和引用数据类型两种
42 // 基本数据类型:整型、浮点型、字符型、布尔型;字符串属于引用数据类型
43 // 在java中整数默认是int类型,浮点数默认是double类型
44 // 变量在使用之前,必须初始化(赋值)
45
46 // 声明变量并赋值
47 int a = 10;
48 int b = 20;
49 int c = 10, d = 20; // 不建议使用这种方式,降低程序的可读性
50 System.out.println(a);
51 System.out.println(b);
52 System.out.println(c);
53 System.out.println(d);
54
55 // 先声明再赋值
56 double e;
57 float f;
58 e = 10.0;
59 f = 20.0F;
60 long g, h;
61 g = 10L;
62 h = 20L;
63 System.out.println(e);
64 System.out.println(f);
65 System.out.println(g);
66 System.out.println(h);
67
68 /*
69 1 自动类型转换
70 把一个表示数据范围小的数值或者变量赋值给另一个表示数据范围大的变量。这种转换方式是自动的,直接书写即可
71 */
72 double num = 10; // 将int类型的10直接赋值给double类型
73 System.out.println(num); // 输出10.0
74
75 /*
76 2 强制类型转换
77 把一个表示数据范围大的数值或者变量赋值给另一个表示数据范围小的变量
78 */
79 double num1 = 5.5;
80 int num2 = (int) num1; // 将double类型的num1强制转换为int类型
81 System.out.println(num2); // 输出5(小数位直接舍弃)
82
83 // 注意#1 char类型的数据转换为int类型是按照ASCII码表中对应的int值进行计算的
84 int _a = 'a';
85 System.out.println(_a); // 将输出97
86 // 注意#2 整数默认是int类型,byte、short和char类型数据参与运算均会自动转换为int类型
87 byte b1 = 10;
88 byte b2 = 20;
89 //byte b3 = b1 + b2; // error,b1和b2会自动转换为int类型,计算结果为int,int赋值给byte需要强制类型转换
90 byte b3 = (byte) (b1 + b2); // OK
91 int sum = b1 + b2; // 也OK
92 // 注意#3 boolean类型不能与其他基本数据类型相互转换
93 }
94 }