java 从零开始,学习笔记之基础入门<运算符表达式和流程控制>(六)(一)

2014-11-24 08:34:28 · 作者: · 浏览: 2
运算符表达式和流程控制
v 分割符:,,;,[],()
v 算术运算符: +, ,*,/,%,++,
v 关系运算符: >,<,>=,<=,==,!=
v 布尔逻辑运算符: !,& , | , ^ , &&,||
v 位运算符: &,|,^,~ , >>,<<,>>>
v 赋值运算符: = 扩展赋值运算符:+=, =,*=,/=
v 字符串连接运算符: +
v 造型操作符:()
位运算符
~-- 取反 & -- 按位与
| -- 按位或 ^ -- 按位异或 (相同为0,不同为1)
移位运算符
<<(左移)
>>(右移)
>>(无符号运算符)
8<<2 (指的是从左边开始不为0的数像左移2位 以后为32) 1000<<2=32;
13>>3(指的是将左边不为0的数向右移动操作符右边的位数)1101>>3=1;
13<<35==13<<(35-32)=104
14>>35==14>>(35-32)=1
如果是一个负数
-13<<3 -13*2*2*2=-104
-14>>4
如果是负数,需要将转换成32进制的数的时候,在数的最前面加上数字1
如果是正数,则不必要加
如果是short byte long这种类型的数据向左移右移
需要先转换成int类型,在移位
无符号右运算符
>>>
在转换成的32位的数值前面加上0
8>>>2
1000
再前面补0(“0“是符号位)
1000
再向右移2位
0010
结果为2
流程控制
package com.ibm.four;
public class FuHaoDemo01 {
public static void main(String[] args) {
int i,j;
//初始值
i=10;
j=20;
System.out.println("加法:"+i+j);
System.out.println(i+j);
System.out.println("减法:"+(i-j));
System.out.println("乘法:"+i*j);
System.out.println("除法:"+j/i);
System.out.println(i++);
System.out.println(i--);
System.out.println(++i);
System.out.println(--i);
//取余(取模)
System.out.println(9%3);
System.out.println(9%4);
System.out.println(10%4);
System.out.println(12%6);
System.out.println(1==1);
//位运算符
System.out.println(13>>3);
System.out.println(8<<2);
System.out.println(13<<35);
System.out.println(14>>35);
System.out.println(-13<<3);
System.out.println(-14>>4);
//对于这种非int类型的数值的位移,需要先将对应的类型转换成int类型,在移位
byte b = 120;
System.out.println(b<<4);
char c='9';
System.out.println(c>>2);
long l=12;
System.out.println(l<<2);
//采用移位运算可以提高运算效率
System.out.println(8>>>2);
//赋值运算符
int m=0;
int k=100;
m=m+k;
m += k;
m-=k;
System.out.println(m);
//想这种属于扩展的运算符;
//当一个运算符中存在不同的运算符,我们需要使用类型转换
byte b1 = 100;
int l5=0;
//隐式转换;
int pp = b1+l5;
//显示转换
float f = 12.5f;
int ppp = l5+(int)f;
//字符串的连接符"+"
System.out.println("1:"+1);//拼接之后是一个字符串
System.out.println(1+1);
System.out.println("1:"+"1:");
//注意如果要将整型值转换成字符串
System.out.println(10+"");
//运算符的优先级
if(1>2&&4>3){
//两个条件都满足才为true
System.out.println("------------");
}
if(1>2||3>2){
//只要有一个条件满足就为true
System.out.println("+++++++++++");
}
//条件
int h=0;
h=5>4 5:4;
System.out.println(h);
//分支语句
//分两种:一种是if else语句二种是switch语句
String car="油";
if(car=="水"){
System.out.println("你应该往水库去");
}
else{
System.out.println("你应该往油库里去");
}
/*
* if(条件){
* 条件成立执行
* }
* else{
* 条件不成立的时候执行
* }
* */
if(car=="水"){
System.out.println("往水库走");
}else if(car=="油"){
System.