源代码(交换变量数据)
/**
对给出的两变量,交换数据后输出
*/
public class changeData {
public static void main(String[] args) {
//①通过第三个变量来交换
int a=3;
int b=4;
int c=a;
a=b;
b=c;
System.out.println("a= "+a+" b= "+b);
//②通过表达式
//括号内完成赋值b=a,相当于a=a+b-a=b
a=a+b-(b=a);
System.out.println("a= "+a+" b= "+b);
//③通过运算符
a=a+b;
b=a-b;
a=a-b;
System.out.println("a= "+a+" b= "+b);
//④位运算(最快)
//约束条件 a≠b
a=a^b;
b=a^b;
a=a^b;
System.out.println("a= "+a+" b= "+b);
}
}
源代码(三目运算符应用)
x?y:z x为true,则运行y,x为false,则运行z
其中,x为逻辑语句,y,z均为表达式
/**
某学科总成绩计分规则如下:
期末考试低于50分的,总成绩取卷面成绩
期末考试50到59分的,总成绩为60分
期末考试及格的,卷面成绩占九成,平时成绩一成
及格的人平时分全部满分
总分:100分
*/
public class Achievement {
public static void main(String[] args) {
int score=60;
//[0,50)
if(score<50) {
System.out.println(score);
}
else {
System.out.println(score<60?passFifty():passSixty(score));
}
}
//[60,100]
public static int passSixty(int k) {
return (int)(k*0.9)+10;
}
//[50,60)
public static int passFifty() {
return 60;
}
}