关于+ java中的运算符 Scanner类录入数据

1关于+:

1)可以作为一个运算符
2)字符串拼接符号
3)表示一个数据:正数
	双引号内的 数据是常量
	字符串+任何数据---因为字符串在前面 所以都是一个新的字符串
	常量+字符串--->因为整数在前面所以要先进行计算再进行拼接
	("hello"+'a'+1)------->helloa1
	('a'+1+"hello")-------->98hello  
	

2算数运算符

Java中的运算符
	算数运算符
	赋值运算符
	比较运算符
	逻辑运算符(重点)
	位运算符
	三元运算符(重点)
	
算数运算符:
	基本的算数运算符:
	+   -    *   /    %
	加  减    乘  除   模(余数)
	
	扩展的运算符:
		++  --
		1)单独使用
		2)参与运算
		第一种情况:单独使用
			++和--符号无论在数据的前面,还是在数据的后面  都是对数据进行自加一和自减一
		第二中情况:参与运算
		++和--符号在数据的前面 时:先对数据进行自增或自减 再参与运算
		++和--符号在数据的后面 时:先进行运算 再进行自增和自减
		 
		 int a=10;   
		 int a=10;
		 int a=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 b c 等于多少?
		 
		  int x=4;
		  int y=(x++)+(++x)+(x*10)   //  4+6+60=70
		  问y等于多少
		注意事项:1)第一题 每一步都要进行分析a b c 的值  直到最后一步完成
				2)第二题 (x++)相当于先赋值再运算 即将x的值先赋值给()---4本身再参与运算

赋值运算符

面试题 :
	short s=1;
	1)s=s+1;
	2)s+=1;    //仅仅是计算结果相当于s=s+1    
	问你哪句 会编译失败?
	答案:第一种失败 byte  short  char 三种之间不转换  一旦参与运算 必须进行数据转换才可以
	第二中:扩展的+=  -= *=  /=   %=
这些扩展的赋值运算符中都隐藏一个强制转换故而不会编译出错	

关系运算符

 <>  <=  >=   ==  !=
 特点:无论表达式简单还是复杂  最终的结果就是true或者 false

逻辑运算符

在实际应用中 进行逻辑判断的时候经常使用
基本的逻辑运算符号:
逻辑单与&     //表示并列关系 有false则false 
逻辑单或|     //表示或的关系  有true则true
逻辑异或^     //相同则为false 不同则为true (举例:男女关系)
逻辑非!       //非true则false  偶数个非则是它本身 

扩展的逻辑运算符

逻辑双与&&  
	逻辑双与和逻辑单与的异同
		相同点:都是并列关系
		不同点:逻辑双与具有短路效果
逻辑双或||
	逻辑双或和逻辑单或的异同
		相同点:都是或的关系
		不同点:逻辑双或具有短路效果
	故而:在开发中对于逻辑关系的处理一般都用逻辑双与和逻辑双或来完成
	

位运算符

位运算符符号(其符号与逻辑符号一样 )
位运算符连接的是两个数值
位于:&    //特点:有零则零
位或:|    //
位异或:^
反码:~
   位移符号:
      <<:左移   ---->将数据的二进制计算出来之后 ---->向左移动,在右边补0   (将这个符号左边的数据乘以2的移动次幂)
      >>:右移   ---->二进制数据--->向右移动--->最高符号位如果是0 左边补0---如果最高符号位是1   左边补1   (将这个符号左边的数据除以2的移动次幂)
      >>>:无符号右移---->无论最高符号位是0还是1  左边补0
        
3------二进制数据 0b11
4------二进制数据 0b100
位与&的特点: 有零则零
位或|的特点:有1则1
位异或^的特点:相同位0 不同为1
反码~的特点:按位取反


位异或的特点:一个数据被另一个数据位异或两次其值是它本身 
(a^b^b)   ---->值是a
(a^b^a)   ---->值是b

a=a^b;
b+a^b;  //b=a^b^b;   ------>a
a=a^b;  //a=a^b^a;   ------->b

三元运算符(三目运算符)

三元运算符
格式:
	(表达式)? 执行truede结果:执行false的结果
	执行流程:首先判断表达式是否成立 :如果成立执行true的结果,否则执行false的结果
	需求:比较两个数据的大小
	案例:
		三个和尚比身高,请用Java程序比较最高的人
		已知:三个和尚 都存在各自的身高
		定义三个变量
		三个变量中比较最大的值
		使用中间变量的temp记录第一个和第二个之间的最大值
		int temp=(firPeo>secPeo)?firPeo:secPeo
		三元运算符可以嵌套 (不推荐)

键盘输入数据scanner类

Java提供了一个文本扫描器:scanner
 键盘录入数据的操作步骤:
 在Java中 只要不是在Java.lang包下的类都需要导包
 	1)导包
 		在class的上面书写
 		格式:import Java.util.Scanner;
 	2)固定格式
 		Scanner 对象名称=new Scanner(System.in);
 	3)接收数据//录入数据
    int 变量名=对象名称.nextlnt();//固定格式
 		
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值