java中的运算(2013-05-03-bd 写的日志迁移
// ++自加 --自减 int a=9; a++; // a=a+1; System.out.println(a); // a=10 a--; // a=a-1 System.out.println(a); // a=9 int b=++a; //前加加就相似于 a=a+1 b=a int b=a++; //后加加就相似于 b=a a=a+1 System.out.println(a); System.out.println(b); // int b=++((++a)--) //报错 意外类型,表示(++a)无法确定,栈中不稳定编译器无法确定
//+=左加 -=左减 /=左除 %=左取模 int a=9; a+=10; // a=a+10 float b=26.8f; b+=a; // b=b+a; System.out.println(a); // a=19 System.out.println(b); // b=45.8 int a=9; int b=3; a-=6; // a=a-6 b%=a; // b=b%a System.out.println(a); // a=3 System.out.println(b); // b=0
// 关系运算符: // == 等于 > 大于 < 小于 >= 大于等于 <= 小于等于 != 不等于 int a=9; int b=9; if(a==b){System.out.println("a==b");} b--; if(a>b){System.out.println("a>b");} if(a>=b){System.out.println("a>=b");} // 输入出结果:a==b a>b a>=b
// 从控制台接收参数 package test; // import java.util.Scanner; import java.io.*; public class Input { /** * 作者:test * 日期:2012.1.1 * 功能:输入输出测试 */ public static void main(String[] args) { /* * 输入流,从键盘接收数据 * Scanner input =new Scanner(System.in); * System.out.print("请输入参数:"); * // 从控制台读取一行数据 * int a=input.nextInt(); * a+=a; * System.out.println(a); */ // 输入流,从键盘接收数据 InputStreamReader isr=new InputStreamReader(System.in); BufferedReader br=new BufferedReader(isr); try { System.out.print("输入第一个参数:"); // 从控制台读取一行数据 String a1=br.readLine(); System.out.print("输入第二个参数:"); String a2=br.readLine(); // 把String转换为float类型 float num1=Float.parseFloat(a1); float num2=Float.parseFloat(a2); if(num1>num2){ System.out.println("第一个数大!"); System.out.println("num1="+num1+"\tnum2="+num2); }else if(num1==num2){ System.out.println("一样大!"); System.out.println("num1="+num1+"\tnum2="+num2); }else{ System.out.println("第二个数大!"); System.out.println("num1="+num1+"\tnum2="+num2); } } catch (IOException e) { e.printStackTrace(); } } }
// 逻辑运算符: && 与 || 或 !非 public class Test5 { public static void main(String args[]){ int a=9; int b=9; if(a==b || a>8){ System.out.println("至少有一个条件成立!"); } b--; if(a>b && b>5){ System.out.println("两个条件必须成立!"); } if(!(a<=b)){ System.out.println("此条件不成立!"); } } } // 结果为:全部都要输出
java 基本语法中的三大流程控制
1.单分支 2.双分支 3.多分支
单分支:
if(条件表达式){
语句:
}
双分支:
if(条件表达式){
语句:
}else{
语句:
}
多分支:
if(条件表达式){
语句:
}else if(条件表达式){
语句:
}else if(条件表达式){
语句:
}else{
语句:
}
int a=23; if(a>18){ System.out.println("a>18"); }else if(a>8){ System.out.println("a>8"); }else if(a>21){ System.out.println("a>21"); }else{ System.out.println("else"); } // 结果:只输出了a>18;
结论:不管是单分支和双分支还是多分支中程序找到一个入口就不会再去判断了。
switch(条件表达式){
case 常量1:
语句1;
break;
case 常量2:
语句2;
break;
................
case 常量n:
语句n;
break;
default:
语句;
break;
}
// 条件表达式的数据类型应和case后的常量类型一致;
switch(expr1)中,expr1是一个整数表达式。因此传递给switch 和case 语句的参数应该是int、short、char 、byte或者enum(枚举)。Long,string 都不能作用于swtich。
// 循环