标签:
文档版本 | 开发工具 | 测试平台 | 工程名字 | 日期 | 作者 | 备注 |
---|---|---|---|---|---|---|
V1.0 | 2016.02.22 | lutianfei | none |
* 注:整数相除只能得到整数,若想得到小数,只需将任意一个数据变为浮点数。
* eg:System.out.println(x*1.0/y);
++,– :
练习题1:
int a=10,b=10,c=10
a=b++; //a=10,b=11,c=10
c=–a; //a=9,b=11,c=9
b=++a; //a=10,b=10,c=9
a=c–; //a=9,b=10,c=8
练习题2:
int x =4
int y =(x++)+(++x)+(x*10)
step1: 4+ (x = 5)
step2: 4+6(x = 6)
step3: 4+6 +(6*10)
符号:
面试题
* 注1:比较运算符的结果都是boolean型,也就是要么是true,要么是false。
3<x<6
,应该写成x>3 & x<6
。“&”和“&&”的区别:
“|”和“||”的区别同理,双或时,左边为真,右边不参与运算。
异或( ^ )与或( | )的不同之处是:当左右都为true时,结果为false。
注2:’^’的特点:一个数据对另一个数据位异或两次,该数据不变。
面试题1:请自己实现两个整数变量的交换
class OperatorTest{
public static void main(String[] args){
int a = 10;
int b = 20;
System.out.println("a:"+a+",b:"+b);
//方式1:使用第三方变量(开发中最常用的)
int c = a;
a = b;
b = c;
//方式2:用位异或实现(面试装逼项)
//结论:左边a,b,a; 右边:a^b
a = a ^ b;
b = a ^ b; // a^b^b = a
a = a ^ b; // a^a^b = b
//方式3:用变量相加的做法
a = a+b; // a= 30
b = a-b; // b= 10
a = a-b; // a= 20
//方式4:一句话搞定(面试装逼项)
b = (a+b) - (a=b);
}
}
格式
(关系表达式)?表达式1:表达式2
;练习:获取三个整数中的最大值
class OperatorTest{
public static void main(String[] args){
int a = 10;
int b = 30;
int c = 20;
int temp = (a>b)?a:b;
//System.out.println(temp);
int max =(temp > c) ? temp : c;
System.out.println("max is "+max);
//方法2:一步搞定
int max1 =(a>b) ? ((a>c) ? a : c) : ((b>c) ? b : c);
}
}
import java.util.Scanner;
class ScannerDemo{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个数据:");
int x = sc.nextInt();
System.out.println("你输入的数据是:"+x);
}
}
if(关系表达式) {
语句体
}
执行流程
注意事项
if(关系表达式) {
语句体1;
}else {
语句体2;
}
执行流程
if的第二种格式和三元运算符之间的转换
if(关系表达式1) {
语句体1;
}else if (关系表达式2) {
语句体2;
}
…
else {
语句体n+1;
}
标签:
原文地址:http://blog.csdn.net/lutianfeiml/article/details/51089123