文章目录
Java语言基础
包含算术运行符、关系运算符、逻辑运算符、赋值运算符、字符串拼接运算符、三目/条件运算符;分支结构,if结构、if…else结构、if…else if结构、switch…case结构。
一、运算符
1.1、算术运算符
加(+),减(-),乘(*),除(/),取余(%),自增(++),自减(–)
package day01;
public class Test {
public static void main(String[] args) {
int a = 100;
int b = 20;
int c = a/b; // 结果为5,整数相除取整数
int i = 10;
int m = i++;
System.out.println(m+","+i); // 结果为10,11,--(--)在后时,先用后加(减)
int n = ++i;
System.out.println(n+","+i); // 结果为12,12,--(--)在前时,先加(减)后用
int d = 5;
System.out.println(d%2); // 结果为1,余数为1
}
}
1.2、关系运算符
java关系运算用于判断数据之间的大小关系,关系运算的结果为boolean型(true或false)。大于(>),小于(<),大于等于(>=),小于等于(<=),等于(==),不等于(!=)
package day01;
public class Test {
public static void main(String[] args) {
int a = 10;
boolean b1 = a > 10;
boolean b2 = (a+1) >= 10;
System.out.println(b1); // false
System.out.println(b2); // true
}
}
1.3、逻辑运算符
逻辑运算是建立在关系运算基础之上的,逻辑运算的结果也是boolean型。与(&&),或(||),非(!)
a | b | a&&b | a(或)b | !b |
---|---|---|---|---|
false | false | false | false | true |
false | true | false | true | false |
ture | false | false | true | true |
ture | true | true | true | false |
注:当a、b都为false,则a&&b为false;a||b为false;!b为true
package day01;
public class Test {
public static void main(String[] args) {
double a = 20;
boolean b1 = (a>=15) && (a<30);
System.out.println(b1); // true
int num = 30;
boolean b2 = num<0 || num>50;
System.out.println(b2); // false
}
}
注:“&&”、“||”具备“短路”的特征:如果通过第一个表达式的值即可得出结果,则不计算第二个表达式
1.4、赋值运算符
“=”称为赋值运算符,用于对变量赋值。扩展赋值表达式(+=,-=,*=,/=,%=)
package day01;
public class Test {
public static void main(String[] args) {
int a = 20;
int b = a % 5;
int c,d,e;
c = d = e = 100; // 整个表达式值为100
System.out.println("c = "+c+" d = "+d+" e = "+e);
int f = 100;
f += 10; // 相当于f=f+10
System.out.println("f = "+f); // 10
}
}
1.5、字符串拼接运算符
“+”可以实现字符串和其它数据类型的“相连”
package day01;
public class Test {
public static void main(String[] args) {
int a = 10;
String str = "a=" + a;
System.out.println(str); // 结果为a=10
str = "" + 10 + 20;
System.out.println(str); // 字符串与10相连其结果还是字符串,结果为1020
str = 10 + 20 + "";
System.out.println(str); // 整数相加为30,30与字符串相连结果为字符串,结果为30
}
}
1.6、三目/条件运算符
1)结构为:boolean表达式?数1:数2
2)先计算boolean表达式的值,如果为true,则结果为数1的值;如果为false,则结果为数2的值
package day01;
public class Test {
public static void main(String[] args) {
int a = 10, b = 20;
int flag = a>b? 1:-1; // a>b为false,取第二个数的值,其结果为-1
int min = a<=b? a:b; // a>=b为true,取第二个数的值,其结果为10
System.out.println(flag);
System.out.println(min);
}
}
二、分支结构
任何复杂的程序逻辑都可以通过“顺序”,“分支”,“循环”三种基本的程序结构来实现
2.1、if结构
if(关系表达式){
语句块
}
当关系表达式为true时,执行语句块,否者不执行
if(a>10) {
a++; // 当a大于10时,执行a++,否则不执行
}
2.2、if…else结构
if(关系表达式){
语句块1
}else{
语句块2
}
当关系表达式为true时,执行语句块1,否者执行语句块2
if(a>10) {
a++; // 语句块1
}else {
a--; // 语句块2
}
2.3、if…else if结构
if(a>=10) {
a++;
}else if(a>=5){
a--;
}
2.4、switch…case结构
switch(整数表达式){
case 整数值1:
语句1
case 整数值2:
语句2
... ... ...
default :
语句0
}
-
优点:效率高、结构清晰
-
缺点:整数、相等
-
break:跳出switch