您的位置:首页 > 编程语言 > Java开发

JAVA基本语法(二)

2018-02-19 23:01 218 查看
一、算术运算符//测试算术运算符:+ - + - * / % ++ -- +
class TestAri
{
public static void main(String[] args)
{
//除:/
int i = 12;
int j = i/5;
double d = i / 5;
System.out.println(j);//j的值为2
System.out.println(d);//d的值为2.0
double d1 = i/5.0;//d1的值为2.4
//取模:% ,结果的符号取决于被摸数
int i1 = i % 5;//i1 = 2
int i2 = -12 % 5;//i2=-2
int i3 = 12 %(-5);//i3=2
int 14 = -12 % (-5);//i4=-2
//前++:先加一后做运算
//后++:先做运算后加一

int myInt1 = 10;
int myInt2 = myInt1++;//后++
System.out.println(myInt1);//11
System.out.println(myInt2);//10

int myInt3 = 10;
int myInt4 = ++myInt3;//后++
System.out.println(myInt3);//11
System.out.println(myInt4);//11
//前--:先减一后做运算
//后--:先做运算后减一

}
}
二、赋值运算符//赋值运算符: += -= *= /= %= ,不会改变原有数据类型
class GetValue
{
public static void main(String[] args)
{
int i1 = 10;
i1 += 3;//i1 = i1 +3

short s = 10;
s = s+3;//编译不通过,自动类型转换为int型,但s为short型
s = (short)(s + 3);//只能这样实现
s+=3;//既可以实现运算,又不会改变s的数据类型

}
}
三、比较运算符



四、逻辑运算符
&—逻辑与         | —逻辑或         !—逻辑非

&& —短路与      || —短路或        ^ —逻辑异或 //逻辑运算符: & && | || ! ^
class TestLogic
{
public static void main(String[] args)
{
boolean a = true;
boolean b = false;
//&与&&的区别:&:不管左边是true还是false,右端都会进行运算。
// &&:当左端为false时,右端不会进行运算,这就是短路运算。
//使用时,建议使用&&
int i1 = 10;
if(b&(i1++)>0)
{
System.out.println("今天天气很晴朗");
}
else
{
System.out.println("难得没有雾霾");
}
System.out.println(i1);//11
int i2 = 10;
if(b&&(i2++)>0)
{
System.out.println("今天天气很晴朗");
}
else
{
System.out.println("难得没有雾霾");
}
System.out.println(i2);//10

//| 与 || 的区别:|:左端为true时,右端正常进行运算
// ||:左端为true时,右端不进行运算
int i3 = 10;
if(a | (i3++)>0)
{
System.out.println("今天天气很晴朗");
}
else
{
System.out.println("难得没有雾霾");
}
System.out.println(i3);//11
int i4 = 10;
if(a || (i4++)>0)
{
System.out.println("今天天气很晴朗");
}
else
{
System.out.println("难得没有雾霾");
}
System.out.println(i4);//10
}
}
五、位运算符
(1)左移运算符:



(2)右移运算符和无符号右移运算符:



(3)异运算符:



六、三元运算符/*
三元运算符:(条件表达式)? 表达式1 : 表达式2;
要求表达式1与表达式2为同一数据类型。
既然是运算符,就一定会有运算的结果,结果的数据类型与表达式1,2的类型一致
*/
class TestSanYuan
{
public static void main(String[] args)
{
int i = 10;
int j = 20;
//此时max记录了i与j的较大值
int max = (i > j)? i : j;

String str = (i > j)? "i大" : "j大";
//String str = (i>j)? i : "j大"; 错误
String str1 = (i > j)?"i大" : (i == j)? "相等": "j大" ;

System.out.println(max);
System.out.println(str);
System.out.println(str1);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: