Java学习总结
今天老师讲的东西不多,开始的时候讲了Eclipse的用法!终于可以不用记事本了,这个相当的蛋疼,有木有啊!虽然老师推荐我们用中文版的,但是我觉得,还是英语版的好,这样既可以学习英语又会很专业。
一、if-else-if语句(表达能力有限,来个例子,简单有容易理解)
import javax.swing.JOptionPane;
public class Test3 {
public static void main(String[] args) {
String n1 = JOptionPane.showInputDialog(null, "请输入基本路费:");
String n2 = JOptionPane.showInputDialog(null, "请输入货重:");
String n3 = JOptionPane.showInputDialog(null, "请输入距离:");
double p = Double.parseDouble(n1);// 基本运费
double w = Double.parseDouble(n2);// 货重
double s = Double.parseDouble(n3);// 距离
double d =0;// 折扣
if (s < 250) {
d = 0;
} else if (s < 500) {
d = 0.02;
} else if (s < 1000) {
d = 0.05;
} else if (s < 2000) {
d = 0.08;
} else if (s < 3000) {
d = 0.1;
} else {
d = 0.15;
}
JOptionPane.showMessageDialog(null, "最终的价格是" + p * s * w * (1 - d));
}
}
public class Test3 {
public static void main(String[] args) {
String n1 = JOptionPane.showInputDialog(null, "请输入基本路费:");
String n2 = JOptionPane.showInputDialog(null, "请输入货重:");
String n3 = JOptionPane.showInputDialog(null, "请输入距离:");
double p = Double.parseDouble(n1);// 基本运费
double w = Double.parseDouble(n2);// 货重
double s = Double.parseDouble(n3);// 距离
double d =0;// 折扣
if (s < 250) {
d = 0;
} else if (s < 500) {
d = 0.02;
} else if (s < 1000) {
d = 0.05;
} else if (s < 2000) {
d = 0.08;
} else if (s < 3000) {
d = 0.1;
} else {
d = 0.15;
}
JOptionPane.showMessageDialog(null, "最终的价格是" + p * s * w * (1 - d));
}
}
注意:多个if和if-else-if的区别。
1、if-else-if是一条语句,当一个if条件满足后,后面的判断不再执行。
2、多个if是多条语句,每个if都要执行。
二、运算符的优先级
三、i++和++i的区别
1、i++先运算,在自增。
如:int i =10;
int j =i++;
分别打印i的值和j的值为11和10.
2、++i先自增,在运算。
如:int i =10;
int j =++i;
分别打印i的值和j的值为11和11.
四、&&和&的区别。
1.&&是逻辑运算符,操作数必须为boolean。&是位运算符操作数可以为boolean,也可以为位运算符。
2.&&是短路运算符。当第一个条件为假是,第二个条件不再做判断。&是非短路运算符,无论第一个条件是否为假,第二个条件都要执行。
五、switch语句。
import javax.swing.JOptionPane;
public class Test5 {
public static void main(String[] args) {
String x = JOptionPane.showInputDialog(null, "请输入学生成绩");
int X = Integer.parseInt(x);
switch(X/10){
case 6:
System.out.println("及格");
break;
case 7:
System.out.println("中等");
break;
case 8:
System.out.println("良好");
break;
case 9:
System.out.println("优秀");
break;
case 10:
System.out.println("你已超神");
break;
default:
System.out.println("不及格");
break;
}
}
}
public class Test5 {
public static void main(String[] args) {
String x = JOptionPane.showInputDialog(null, "请输入学生成绩");
int X = Integer.parseInt(x);
switch(X/10){
case 6:
System.out.println("及格");
break;
case 7:
System.out.println("中等");
break;
case 8:
System.out.println("良好");
break;
case 9:
System.out.println("优秀");
break;
case 10:
System.out.println("你已超神");
break;
default:
System.out.println("不及格");
break;
}
}
}
说明:
1、switch()括号里的表达式结果只能是byte、short、int、char类型,在jdk1.7中还多一个String。
2、case后面只能是常量。
3、break表示中断分支,没有break,程序会一直运行下去,知道遇到break为止。
4、default在找不到case后的情况后,就执行default后的语句。