java程序
1. 基本语法
大小写敏感:
Java 是大小写敏感的
类名:
对于所有的类来说,类名的首字母应该大写。如果类名由若干单词组成,那么每个单词的首字母应该大写
方法名:
所有的方法名都应该以小写字母开头。如果方法名含有若干单词,则后面的每个单词首字母大写。
源文件名:
源文件名必须和类名相同
主方法入口:
所有的 Java 程序由 public static void main(String[] args) 方法开始执行
2. Java 标识符
- 类名、变量名以及方法名都被称为标识符。
所有的标识符都应该以字母(A-Z 或者 a-z),美元符($)、或者下划线(_)开始 首字符之后可以是字母(A-Z 或者 a-z),美元符($)、下划线(_)或数字的任何字符组合 |
关键字不能用作标识符
标识符是大小写敏感的
合法标识符举例:age、$salary、_value、__1_value
非法标识符举例:123abc、-salary
1. 常见基本类型及hello world
/* java代码 */
public class Demos1_HelloWord {
public static void main(String[] args) {
// 字符串常量
System.out.println("HelloWord");
System.out.println("你好世界");
System.out.println("----------------");
// 整数常量
System.out.println(666);
System.out.println(-888);
System.out.println("----------------");
// 字符常量
System.out.println('A');
System.out.println('你');
System.out.println("----------------");
// 小数常量
System.out.println(3.14);
System.out.println(-0.12);
System.out.println("----------------");
// 布尔常量
System.out.println(true);
System.out.println(false);
System.out.println("----------------");
// 空常量
System.out.println();
System.out.println("----------------");
}
}
- 运行结果
HelloWord
你好世界
----------------
666
-888
----------------
A
你
----------------
3.14
-0.12
----------------
true
false
----------------
----------------
2. 拼接运算
- 字符串的“+”操作
- 字符串直接拼接
- 字符串与int型拼接(从左到右,与字符串相连时做拼接,99+1+“abc”–>100abc)
public class Demos2_Add {
public static void main(String[] args) {
// 拼接操作
System.out.println("I Love You " + 520);
System.out.println("I Love You " + 5 + 20);
// 运算后再进行拼接
System.out.println(500 + 18 + 2 + " I Love You");
}
}
- 运行结果
I Love You 520
I Love You 520
520 I Love You
3. 加法运算
- 自增自减运算符
++(自增):变量的值加1 --(自减):变量的值键1 1. 如果放在变量的后面先做操作再计算 2. 如果放在变量的前面先做计算再操作 |
public class Demos3_Add_Subtract {
public static void main(String[] args) {
int i = 10;
int j = 10;
// 自增(++)不参与操作时,前后都可以
i++;
System.out.println("1. i自增1后的值:" + i);
++j;
System.out.println("2. j自增1后的值:" + j);
// 参加操作时,位置不同,结果不同
int m = 10;
int n = 10;
// 参与操作
int h = m++; // 先赋值
int k = ++n; // 先计算
System.out.println("1. h的值:" + h);
System.out.println("2. m的值:" + m);
System.out.println("1. k的值:" + k);
System.out.println("2. n的值:" + n);
}
}
- 运行结果
1. i自增1后的值:11
2. j自增1后的值:11
1. h的值:10
2. m的值:11
1. k的值:11
2. n的值:11
4. 减操作
public class Demos4_Operator {
public static void main(String[] args) {
// 定义变量
int a = 23;
int b = 5;
// 计算结果
System.out.println(a + b);
System.out.println(a - b);
// 整数除法得到的是商
System.out.println(a * b);
System.out.println(a / b);
System.out.println(a % b);
// 要得到准确的商,必须要有浮点数的参与
double l = 10;
System.out.println(a / l);
// 字符的预算操作
char C = 'A';
System.out.println(a + C);
C = 'a';
System.out.println(a + C);
C = '0';
System.out.println(a + C);
// 类型提升
double h = l + 12.06;
System.out.println(h);
float s = C + 12;
System.out.println(s);
}
}
- 运行结果
28
18
115
4
3
2.3
88
120
71
22.060000000000002
60.0
5. 标识符转换
// 标识符类型转换
public class Demos5_Identifier {
public static void main(String[] args) {
// 自动类型转换
double d = 20;
System.out.println(d);
// 定义类型转换
byte b = 15;
System.out.println(b);
// 转换
short h = b;
System.out.println(h);
int i = h;
System.out.println(i);
// 强制转换
// 只取整数,有数据丢失
int l = (int) 89.5;
System.out.println(l);
}
}
- 运行结果
20.0
15
15
15
89
6. 逻辑运算
逻辑运算符 | 功能 |
---|---|
||(短路或 ) | 都为false,则false。有一个为true便不再继续判断了 |
|(逻辑或) | 都为false,则false。所有的条件都判断都为false,则false。所有的条件都判断 |
&&(短路与) | 都为true,则true。有一个为false便不再继续判断了 |
&(逻辑与) | 都为true,则true。所有的条件都判断 |
!(非) | 变成相反的样子 |
^(异或) | 相同则为false,不相同则为true |
public class Demos6_Logical {
public static void main(String[] args) {
int a = 10;
int b = 20;
int c = 30;
// & 逻辑与:有false则false
// false---false
System.out.println((a > b) & (a > c));
// ture---false
System.out.println((a < b) & (a > c));
// false---ture
System.out.println((a > b) & (a < c));
// ture---ture
System.out.println((a < b) & (a < c));
System.out.println("--------------");
// | 逻辑或:有ture则ture
System.out.println((a > b) | (a > c));
System.out.println((a < b) | (a > c));
System.out.println((a > b) | (a < c));
System.out.println((a < b) | (a < c));
System.out.println("--------------");
// ^ 逻辑异或:相同false不同为ture
System.out.println((a > b) ^ (a > c));
System.out.println((a < b) ^ (a > c));
System.out.println((a > b) ^ (a < c));
System.out.println((a < b) ^ (a < c));
System.out.println("--------------"
// ! 逻辑非:取反结果
System.out.println(!(a > b));
System.out.println(!!(a > b));
System.out.println(!!!(a > b));
System.out.println("--------------");
// 短路逻辑运算符
System.out.println((a++ > 100) && (b++ > 100));
System.out.println("a的短路与运算值" + a);
System.out.println("b的短路与运算值" + b);
System.out.println((a++ > 100) & (b++ > 100));
System.out.println("a的与运算值" + a);
System.out.println("b的与运算值" + b);
System.out.println("--------------");
}
}
- 运行结果
false
false
false
true
--------------
false
true
true
true
--------------
false
true
true
false
--------------
true
false
true
--------------
false
a的短路与运算值11
b的短路与运算值20
false
a的与运算值12
b的与运算值21
--------------
7. 强制转换
强制转换与自动转方向换相反
自动类型转换(数据范围小的数值或者变量赋值给数据范围大的变量)
- 自动转换图
public class Demos8_Variable {
public static void main(String[] args) {
// 定义变量
int a = 10;
double b = 21.03;
// 输出变量名
System.out.println("不同变量计算");
System.out.println(a + b);
// 修改变量
a = 5;
System.out.println("修改后的值");
System.out.println(a + b);
// 定义byte类型变量
byte c = 2;
System.out.println(c);
// 定义long类型变量
long d = 10000000L;
System.out.println(d);
// 定义boolean类型变量
boolean h = true;
System.out.println(h);
// 定义float类型变量
float f = 11.23F;
System.out.println(f);
double g = 20;
System.out.println(g);
// 强制转换
int k = (int) 96.23;
System.out.println(k);
// 字符串变量
String name = "你好";
String names;
names = "晴";
System.out.println(name);
System.out.println(names);
// 字符类型
char c1 = 'm';
// 自动转换ascll码
System.out.println(c1 + 1);
}
}
不同类别的变量名不能重复,变量必须对其进行赋值,整数过大时在整数后+“L”,float类型需在其后+“F”(即long默认为int,float默认为double)
- 运行结果
不同变量计算
31.03
修改后的值
26.03
2
10000000
true
11.23
20.0
96
你好
晴
110