欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

逻辑运算符,位运算符

程序员文章站 2022-05-18 15:56:21
...

逻辑运算符" & | " 的应用:
&:与。两边的表达式结果都是true时,则为true,否则为false;
| :或。只要有一个为true则结果为true,否则结果为false。
! :非。!true=false,!false=true。
^:异或。两边相同时为false,两边不同时为true。
&&:短路与。如果左边为false,则右边不再计算
|| :短路或。如果左边为true,则右边不再计算

位运算:
前提条件:需要将数据转为二进制数据才可以运算。
十进制转二进制:不断除以2取余数的过程。
逻辑位运算:
& | ^
移位运算:
左移:<< ,被移位的数字乘以2的移动次幂。
具体方法:首先要把数字转换成二进制,填完整,比如11<<2,11的二进制为00001011(一个字节有8位(bit))左移两位即逻辑运算符,位运算符
右移:>> ,被移位的数字除以2的移动次幂,最高位补位取决于被移位的数是正数还是负数,正数补0,负数补1。
无符号右移:>>> ,被移位的数字除以2的移动次幂,最高位补位与被移位的数是正数还是负数没有关系,都补0。
逻辑运算符,位运算符

判断输入的数是否为水仙花数:
注意点:1.从控制台输入数字需要引用Scanner,在程序开头输入如下代码:import java.util.*,*为通配符,这里也可以写的具体一点写成Scanner。

import java.util.*;
class Demo12  {
	public static void main(String[] args){
		Scanner input=new Scanner(System.in);
		System.out.println("请输入要进行比较的数值:");
//		int num1=input.nextInt();
//		int num2=input.nextInt();
//		int num3=input.nextInt();
//		int num4=input.nextInt();
//		
//		int max=num1>num2?(num1>num3?(num1>num4?num1:num4):(num3>num4?num3:num4)):(num2>num3?(num2>num4?num2:num4):(num3>num4?num3:num4));
//			System.out.println("最大的值为:"+max);

		//判断输入的数是否为水仙花数
		//  从控制台获取数据
		int number=input.nextInt();
		//  拆分成个位十位和百位三个数字
		int a,b,c,sum;
		a=number/100;
		b=number%100/10;
		c=number%10;
		//  计算幂结果
		sum=a*a*a+b*b*b+c*c*c;
		//比较结果和原数值是否相同
		if(sum==number){
			System.out.println("该值为水仙花数");
		}else{
			System.out.println("该值不是水仙花数");
		}
		System.out.println("over");
	}
}

案例2:15s,100米进入决赛,根据性别进行分组

//15s,100米进入决赛,根据性别进行分组
import java.util.*;
public class Demo13{
	public static void main(String[] args){
		//引入Scanner函数
		Scanner input=new Scanner(System.in);
		System.out.print("请输入比赛用时:");
		//从控制台获取时间变量
		int time=input.nextInt();
		if(time<=15){
			System.out.println("恭喜你进入决赛!");
			System.out.println(); //输出空行,美观
			System.out.println("请输入性别,1代表男生,2代表女生:");
		//从控制台获取性别变量
			int sex=input.nextInt();
			if(sex==1){
				System.out.println("恭喜你被分到男生组!");
			}else if(sex==2){
				System.out.println("恭喜你被分到女生组");
			}else{
				System.out.println("对不起,你输入的性别有误!");
			}
		}else{
			System.out.println("很遗憾你没有进入决赛,请再接再厉!");
		}
	}
}
相关标签: 学习记录