`
incyanggan
  • 浏览: 32633 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

Java菜鸟学习笔记--语法篇(三):运算符概述

 
阅读更多

分类

1.算术

单目:+(取正)-(取负) ++(自增1) - -(自减1)
双目:+ - * / %(取余)
三目:a>b?true:false 说明:当a大于b的时候,为true(也就是冒号之前的值),否则为false;这整个运算符包括一个关系运算符(可以是“>”"<""!="等等),一个“?”,一 个“:”,冒号前后需要有两个表达式或者是值或者是对象。

2.关系

等于符号:==,不等于符号:!= ,大于符号:>, 小于符号:<,大于等于符号:>= ,小于等于符号:<= 。

3.位与逻辑

位运算符 与(&)、非(~)、或(|)、异或(^)
&:当两边操作数的位同时为1时,结果为1,否则为0。如1100&1010=1000
| :当两边操作数的位有一边为1时,结果为1,否则为0。如1100|1010=1110
~:0变1,1变0 (只需要一个操作数即可)
^:两边的位不同时,结果为1,否则为0.如1100^1010=0110
逻辑运算符
与(&&)、非(!)、或(||)

4.赋值

= += -= *= /= %= &= ^= |= <<= >>=

instanceof

该运算符是双目运算符,左面的操作元是一个对象,右面是一个类。当左面的对象是右面的类创建的对象时,该运算符运算结果是true,否则是false。


编程示例



%运算符:

当分子分母都为实数型时候,分母不能为0;当分子分母有一个以上的浮点型时候,分母可以为0.但是结果为NaN(非数)
//  (除)运算符和(求余)运算符
public class DivTest
{
	public static void main(String[] agrs)
	{
		double a=5.2;
		double b=3.6;
		double div=a/b;
		System.out.println(div);

		/*System.out.println("5除0.0结果:"+5/0.0);//输出正无穷
		System.out.println("-5除0.0"+(-5/0.0));//输出负无穷
		System.out.println("-5除0"+-5/0);*///int/int,底数不可以为0

		//求余能不能是浮点数
		System.out.println("2.5%3.6 = "+a%b);//输出 1.6
		
		//求余能不能父母为零?
		System.out.println("5.2%0 ="+5.2%0);//输出 NaN
		
		//求余分母为0.0如何?		
		System.out.println("5.2%0.0 ="+5.2%0.0);//输出 NaN	
		
		//求余分子为0如何?
		//0或0.0求余任意非0数结果为0.0,0%0为NaN(非数)
		System.out.println("0%0.0 ="+0/0.0);
		/*
		总结:如果都为整形,则不能除数为0,不然会出错
		      如果一个以上为浮点型,除数为0时候,会输出NaN
		*/
	}

}

i++与++i 的比较

首先自加运算针对的事变量!不能用与常量计算,9++,++9是错误表示;
i++先用i放入表达式计算,然后i在自加;反之;



//i++和++i
		int i=8;
		int x,y;
		x=i++ +10;
		System.out.println("i=8,(i++ + 10)= "+x);//输出18

		i=8;
		y=++i +10;
		System.out.println("i=8,(++i + 10)= "+y);//输出19



附加




利用Math类进行复杂运算

利用文档可以查看Math类的所有方法和使用说明



简易功能示例
//Math类的一些使用学习
public class MathTest
{
	public static void main(String[] args)
	{
		//1.求a的五次方,并且赋值与b
		double a,b,c,d;
		a=1.85;
		b=Math.pow(a,5);
		System.out.println("Math.pow(a,5)= "+b);
		//2.求a的平方根 赋值于C,
		c=Math.sqrt(a);
		System.out.println("Math.sqrt(a)= "+c);
		//3.输出随机数,返回一个0~1的随机数
		System.out.println("Math.random()= "+Math.random());
		//4.求sin(1.75)
		System.out.println("Math.sin(1.75)= "+Math.sin(1.75));
		/*结果:
			Math.pow(a,5)= 21.669986562500007
			Math.sqrt(a)= 1.3601470508735443
			Math.random()= 0.5244104865256056
			Math.sin(1.75)= 0.9839859468739369

		*/
	}
}



作者:YangGan
出处:http://blog.csdn.net/incyanggan
本文基于署名 2.5 中国大陆许可协议发布,欢迎转载,演绎或用于商业目的,但是必须保留本文的署名Yanggan(包含链接).

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics