Java运算符知识点总结

送给读者的话:卢思浩在 《愿有人陪你颠沛流离》中说:每个人都在用力活着,用他自己的方式。或许你很羡慕他的生活状态,又或许你看不到他努力的方式。你无须弄懂他全部的故事,也不要妄加猜测和指责。你只要知道你在努力的同时,有很多人也同样在努力,你永远不是孤身一人。

一.算术运算符
俺对象  第三方公司的GV   在这里插入图片描述
注意事项:
(1) +的几种作用:

   a.加法
   b.正数
   c.字符串连接符

(2)除法的时候要注意一个问题:

  a.整数相除,只能得到整数
  b.要想得到小数,可以*1.0

(3)/和%的区别

 a./获取的是操作的商,%获取的是除法的操作的余数
 b.++和--的应用
 c.单独使用效果相同
 d.参与运算使用,在操作数的前后效果不同

经典例题如下:

 class OperatorTest{
	public static void main(String[] args){
		int a = 10;
		int b = 10;
		int 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
		
		//a:9,b:10,c:8
		System.out.println("a:"+a+",b:"+b+",c:"+c);
		System.out.println("---------------------") ;
		
		int x = 4;
		int y = (x++)+(++x)+(x*10) ;
		
		//x = 4 ,5 ,6
		//int y = 4 + 6 +(6*10) 
		//x:6,y:70
		System.out.println("x:"+x+",y:"+y) ;
	}
}

二. 赋值运算符
基本的赋值运算符: = ,
扩展的赋值运算符: +=, -=, *=, /=, %=

经典例题:

        short s = 1; s = s + 2;有没有问题?如果有怎么解决?
        short s = 1; s += 2;有没有问题?如果有怎么解决?
        short s = 1; s = s + 2有问题,因为s+2会默认提升为int型
        然后在进行运算.改为short=(short)s1+2li即可.
        short s = 1; s += 2没有问题,扩展的赋值运算符存在默认的强制类型转换.
        即: s+=1  等价于  short=(short)s+2

三. 关系(比较)运算符
在这里插入图片描述
注1:比较运算符的结果都是boolean型,也就是要么是true,要么是false。
注2:比较运算符“== ”不能误写成“=” 。
1:注意2的时候举例
System.out.println(a==b);
System.out.println(a=b);
2:赋值的时候要注意类型问题
int x = 10;
int y = 10;
boolean flag = (x == y);
boolean flag = (x = y);
boolean b1 = true;
boolean b2 = false;
boolean b3 = (b1 == b2);
boolean b4 = (b1 = b2);
四.逻辑运算符
逻辑运算符: & | ^ !
扩展的逻辑运算符: && ||
在这里插入图片描述

经典例题:
逻辑单与和逻辑双与的区别:
相同点:都是有false则false
不同点:当时符号位&&时,左边为flase,则右边不执行(扩展的逻辑运算符的短路效果)

: int x=3,y=4; 
        boolean flag= ((++x==x)&&(y++==y))  也可以写成  boolean flag= x++==x&&y++==y;(运算优先级)
        System.out,println(x);    //4
		System.out,println(y);    //4
	    System.out,println(flag); //false

同理可得:逻辑单或和逻辑双或:
相同点:都是有true则true
不同点:当时符号位||时,左边为true,则右边不执行(扩展的逻辑运算符的短路效果)

  int x=3,y=4; 
    boolean flag= ((x++==x)||(y++==y)) 
    System.out,println(x);    //4
	System.out,println(y);    //4
    System.out,println(flag); //false

五. 位运算符在这里插入图片描述在这里插入图片描述

注意:位运算是直接对二进制进行运算。

经典例题1:
请用最有效的方式写出2乘以8 的结果.

             2<<2

经典例题2:

请实现两个整数变量的交换.

 a: 第三方变量()
temp=a;
a=b;

 b: 加法方式
 a = a + b;
 b = a–b;
 a = a–b;
 c: ^异或位运算符
 d: 一句话搞定:
      a = (a+b) - (b=a)

六.三目运算符

格式
(关系表达式)?表达式1:表达式2;
如果条件为true,运算后的结果是表达式1;
如果条件为false,运算后的结果是表达式2;
示例
获取两个数中大数。

int x=3,y=4,z;
z = (x>y)?x:y;//z变量存储的就是两个数的大数。

经典例题:
使用三元运算符完成如下练习
比较两个数是否相等
获取两个数中最大值
获取三个数中最大值

//比较两个数是否相等
import java.util.Scanner;
class OperatorDemo{
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		System.out.println("input a num");
		int rs1=sc.nextInt();
		System.out.println("input another num");
		int rs2=sc.nextInt();
		boolean x =rs1==rs2;
		System.out.println(x);
		}
}		


//获取两个数中最大值
import java.util.Scanner;
class OperatorDemo{
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		System.out.println("input a num");
		int rs1=sc.nextInt();
		System.out.println("input another num");
		int rs2=sc.nextInt();
		int max=(rs1>rs2)?rs1:rs2;
		System.out.println(max);
		}
}	

//获取三个数中最大值
import java.util.Scanner;
class OperatorDemo{
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		System.out.println("input a num");
		int rs1=sc.nextInt();
		System.out.println("input another num");
		int rs2=sc.nextInt();
		System.out.println("input last num");
		int rs3=sc.nextInt();
        int max=(rs1>rs2)?((rs1>rs3)?rs1:rs3):((rs2>rs3)?rs2:rs3);
		System.out.println(max);	
        }
}

七.运算符优先级表:
在这里插入图片描述

希望这篇分享能帮到幸运的你,小伙伴加油!

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java是一种面向对象的编程语言,它具有简单性、可移植性、安全性、高性能、多线程支持、互联网支持等特点,因此在企业级应用开发中被广泛使用。在Java的应用开发中,Eclipse是一款非常优秀的集成开发环境,它提供了丰富的功能和插件,可以极大地提高Java程序员的开发效率。在本文中,我将分享我在使用Eclipse进行Java开发时的知识经验总结,包括类和对象、继承、接口、数组以及心得体会。 一、类和对象 类是一种抽象的数据类型,它描述了对象的属性和行为。Java中使用class关键字定义类,例如: ``` public class Person { private String name; private int age; public Person(String name, int age) { this.name = name; this.age = age; } public void sayHello() { System.out.println("Hello, my name is " + name + ", I'm " + age + " years old."); } } ``` 在上面的例子中,Person类包含了两个属性name和age,以及一个构造方法和一个方法sayHello。构造方法用于创建对象时初始化对象的属性,而方法则用于描述对象的行为。在Java中,使用new关键字创建对象,例如: ``` Person p = new Person("Tom", 18); p.sayHello(); ``` 在上面的例子中,我们创建了一个名为p的Person对象,通过调用p的sayHello方法,输出了该对象的属性。 二、继承 继承是一种面向对象的编程技术,它允许子类继承父类的属性和方法,并且可以添加自己的属性和方法。在Java中,使用extends关键字表示继承关系,例如: ``` public class Student extends Person { private String school; public Student(String name, int age, String school) { super(name, age); this.school = school; } public void study() { System.out.println(name + " is studying at " + school + "."); } } ``` 在上面的例子中,Student类继承了Person类,并且添加了一个属性school和一个方法study。在子类的构造方法中,使用super关键字调用父类的构造方法进行初始化。通过继承,子类可以直接访问父类的属性和方法,例如: ``` Student s = new Student("John", 20, "Harvard"); s.sayHello(); s.study(); ``` 在上面的例子中,我们创建了一个名为s的Student对象,通过调用s的sayHello方法,输出了该对象继承自父类的属性和方法,同时调用s的study方法,输出了该对象新增的属性和方法。 三、接口 接口是一种抽象的数据类型,它描述了对象的行为但不给出具体的实现。在Java中,使用interface关键字定义接口,例如: ``` public interface Flyable { void fly(); } ``` 在上面的例子中,Flyable接口定义了一个方法fly,但没有具体的实现。在类中实现接口时,需要使用implements关键字,例如: ``` public class Bird implements Flyable { public void fly() { System.out.println("I'm flying."); } } ``` 在上面的例子中,Bird类实现了Flyable接口,并且实现了接口中定义的方法fly。通过实现接口,类可以具有接口中定义的行为。例如: ``` Flyable f = new Bird(); f.fly(); ``` 在上面的例子中,我们创建了一个Flyable接口的实现对象f,通过调用f的fly方法,输出了该对象实现的行为。 四、数组 数组是一种数据结构,它由一组相同类型的元素组成,可以通过下标访问每个元素。在Java中,使用[]运算符定义数组,例如: ``` int[] numbers = {1, 2, 3, 4, 5}; ``` 在上面的例子中,我们定义了一个名为numbers的整型数组,包含了5个元素。可以通过下标访问数组中的元素,例如: ``` System.out.println(numbers[0]); // 输出1 System.out.println(numbers[4]); // 输出5 ``` 在Java中,数组也可以是多维的,例如: ``` int[][] matrix = {{1, 2}, {3, 4}, {5, 6}}; ``` 在上面的例子中,我们定义了一个名为matrix的二维整型数组,包含了3行2列的元素。可以通过下标访问二维数组中的元素,例如: ``` System.out.println(matrix[0][0]); // 输出1 System.out.println(matrix[2][1]); // 输出6 ``` 五、心得体会 在使用Eclipse进行Java开发时,我发现以下几点经验非常有用: 1. 使用快捷键:Eclipse提供了丰富的快捷键,可以大大提高开发效率。例如Ctrl + /可以注释选中的代码块,Ctrl + Shift + F可以格式化代码,Alt + /可以自动完成代码等。 2. 使用代码模板:Eclipse提供了丰富的代码模板,可以快速生成常用的代码块。例如输入sysout然后按下Tab键,就可以生成System.out.println()语句。 3. 使用调试工具:Eclipse提供了强大的调试工具,可以帮助开发者快速定位代码中的错误。例如在断点处添加断点,然后启动调试模式,就可以逐步执行代码并观察变量的值。 4. 使用插件:Eclipse提供了丰富的插件,可以扩展其功能。例如使用MyEclipse插件可以提供更好的Web开发支持,使用Maven插件可以方便地管理依赖关系。 总之,在使用Eclipse进行Java开发时,掌握以上经验可以提高开发效率,减少错误发生,从而更加高效地完成开发任务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值