首页 > 其他分享 >第一阶段第四章运算符

第一阶段第四章运算符

时间:2023-02-09 20:33:49浏览次数:46  
标签:11111111 00000000 补码 System 运算符 println out 第四章 第一阶段

第四章

 算数运算符

 

 运算代码:

public class ArithmeticOperators{
	public static void main(String[] args){
	int i = 10/4;//数学中得2.5 java中得2
	double d = 10/4;//int->double 寰 2.0
	//int i2 = 10.0/4; //把double->int 错误
	double d2 = 10.0/4; //寰2.5
	System.out.println(i);
	System.out.println(d);
	System.out.println(d2);

	//余数公式a/b = a - a/b*b
	int i2 = 10%3;//1
	int i3 = -10%3;//-1
	int i4 = 10%-3;//1

	int i5 = 5;
	int j =i5++;//先赋值后运算 j=i5;i5=i5+1;
	System.out.println(j);//5
	System.out.println(i5);//6
	int j2 =++i5;//先运算后赋值i5=i5+1;j2=i5
	System.out.println(j2);//7
	System.out.println(i5);//7
	}
}

  

 课堂练习

 

public class Test1{
	public static void main(String[] args){
		//题目一
		int i = 59;
		int week = 7;
		int week1 = i/week;
		int day = i%week;
		System.out.println("一共有:"+week1+"周"+day+"天");

		//题目二
		double d = 234.5;
		//double d1 = 5/9*(234.5-100);//bug 5/9在java中得0
		double d1 = 5.0/9*(234.5-100);
		System.out.println("摄氏温度:"+d1);
	}
}

  逻辑运算

 

 

 

 逻辑与和短路与的区别,逻辑或和短路或的区别

public class LogicalOperation{
	public static void main(String[] args){
		//&&(短路与)当前面的判断为假时后面不会判断
		//&(逻辑与)当前面的判断为假时后面仍然判断
               //|和||同理
		int a = 20;
		int b = 80;
		if(a < 10 && ++b > 50){
			System.out.println("true");
		}
		System.out.println("a=" + a + " " + "b=" + b);//a<10为假不会判断 ++b>50, 所以 a=20,b=80;

		if(a < 10 & ++b > 50){
			System.out.println("true");
		}
		System.out.println("a=" + a + " " +  "b=" + b);//a<10为假但仍判断 ++b>50; 所以 a=20,b=81;
	}
}    

  三元运算符

 

 

 

 键盘输入语句

import java.util.Scanner;//表示使用 java.util这个包下的Scanner这个类
public class Input{
	public static void main(String[] args){
		//创建Scanner这个类的对象
	Scanner scanner = new Scanner(System.in);
	System.out.println("请输入名字:");
	String name = scanner.next();//接收用户输入的字符串
	System.out.println("请输入年龄:");
	int age = scanner.nextInt();//接收用户输入的整数
	System.out.println("请输入薪水:");
	double Salary = scanner.nextDouble();
	System.out.println("该用户的名字是:" + name + " " + "该用户的年龄是:" + age + " " + "该用户的薪水是:" + Salary);
	}
}

  进制

 

 

 

 

 二进制转十进制

 

 八进制转十进制

 

 十六进制转十进制

 

 十进制转二进制

注意一个字节是八位如果位数不够需向高位补0 ,一个二进制占八个字节

 

 十进制转八进制

 

 十六进制转10进制

 

 二进制转八进制

注:111是7  第一个1是1 第二个1是2第三个1是八所以加起来是7刚好构成一个八进制 

 

 二进制转十六进制

1111刚好组成一个十六进制所以每四位一组

 

 

八进制和十六进制转二进制

 

注;0X23B  B=1111-4 = 1011  1111是15

 

 

 源码,反码,补码(重点)

 

 位运算

 

 练习1

 

 练习二

 

 

public class BitArithmetic{
	public static void main(String[] args){
		//思路 一,计算机内任何运算都是以补码计算,但是呈现给我们看的是源码
		//二,2的补码:先将2转换成二进制得到源码,因为正数三码合一
		//所以2的补码:00000000 00000000 00000000 00000010 因为2是int类型占4个字节,一个字节占8个bit
		//3的补码同理:00000000 00000000 00000000 00000011
		//三,&运算:得到2&3的补码:00000000 00000000 00000000 00000010    &:两位中同时是1才得1,反之得0
		//四,计算机将补码转换成源码呈现给我们
		//2&3的源码:因为正数三码合一所以源码就是补码
		System.out.println(2&3);//2


		//-2的补码: 负数的补码=反码+1,源码变反码符号位不变其余取反;
		//-2的源码:10000000 00000000 00000000 00000010 注:最高位1代表负号 0代表正号
		//-2的反码:11111111 11111111 11111111 11111101
		//所以-2的补码:11111111 11111111 11111111 11111110
		//~-2:1->0,0->1得 00000000 00000000 00000000 00000001//正数
		System.out.println(~-2);//1


		//2的补码:00000000 00000000 00000000 00000010
		//3的补码:00000000 00000000 00000000 00000011
		//2|3的补码: 两位中有一个为1就得1,两个都为0才得0; 00000000 00000000 00000000 00000011
		//2|3的源码:00000000 00000000 00000000 00000011//正数
		System.out.println(2|3);//3


		//-5的源码:10000000 00000000 00000000 000000101
		//-5的反码:11111111 11111111 11111111 111111010
		//-5的补码;11111111 11111111 11111111 111111011
		//~-5的补码:00000000 00000000 00000000 00000100//最高位为0正数
		//~-5的源码:00000000 00000000 00000000 00000100
		System.out.println(~-5);//4

		//13的补码:00000000 000000000 00000000 00001101
		//7的补码:00000000 00000000 00000000 00000111
		//13&7的补码;00000000 00000000 00000000 00000101
		//13&7的源码:00000000 00000000 00000000 00000101
		System.out.println(13&7);//5

		//-3的源码:10000000 00000000 00000000 00000011
		//-3的反码:11111111 11111111 11111111 11111100
		//-3的补码:11111111 11111111 11111111 11111101
		//3的补码: 00000000 00000000 00000000 000000011
		//-3^3的补码 两个中不相同才为1,反正为0  11111111 11111111 11111111 11111110 //补码-1得反码
		//-3^3的反码:11111111 111111111 11111111 11111101
		//-3^3的源码:10000000 000000000 00000000 00000010
		System.out.println(-3^3);//-2

	}
}

  位运算

 

 

 

 本章作业

 

标签:11111111,00000000,补码,System,运算符,println,out,第四章,第一阶段
From: https://www.cnblogs.com/18083122723qwer/p/17100326.html

相关文章

  • 运算符与JavaDoc
    运算符Java语言支持如下运算符:算术运算符:+,-,,/,%,++,--short和byte运算会转化为int%:取余、模运算a%b++--:自增,自减(一元运算)inta=3;......
  • Java基础知识点(键盘录入、算术运算符、类型转换)
    一:键盘录入Java帮我们写好一个类叫Scanner,这个类这个类就可以接收键盘输入的内容步骤一:导包——Scanner这个类在哪(导包必须出现在类定义的上面)importjava.util.Scanner;步......
  • 运算符
    运算符Java语言支持如下运算符:算数运算符:+,-,*,/,%,++,--赋值运算符:=关系运算符:>,<,>=,<=,==,!=,instanceof逻辑运算符:&&,||,!位运算符:&,|,^,~,>>,<<,>>>条件运算符:?:扩展运算符:+=,-=,*=......
  • JS新运算符 ?. ?? ??= ||= &&= 的含义及用法
    ?.可选链操作符可选链允许读取连接对象链深处的属性值而不必明确验证链中每个引用是否有效。该表达式短路返回值语法:obj?.propobj?.[expr]arr?.[index]func......
  • C语言中的运算符
    ......
  • 11 v-if 更好颜色、三元运算符
    [基础]模板中使用v-if条件判断​​场景​​​​三元运算符控制模板样式​​​​v-if判断​​场景模板中使用条件判断,控制页面的样式,是最常见的应用。Vue中提供了两种基本......
  • JavaScript if判断、三元运算符、循环
    阅读目录if判断三元运算符循环结构while循环for循环for循环数组循环字符串if判断letscore=162;if(score>=80){alert("优秀");}elseif(......
  • JavaScript 运算符数据类型
    阅读目录运算符1、自增运算符2、分别赋值3、求多次方4、js中逻辑运算符数据类型1、数据类型2、强制类型转换运算符1、自增运算符leta=11;aler......
  • Java变量、常量、作用域、运算符
    一、变量可以变化的量Java是强类型语言,每一个变量必须声明其类型Java变量是程序中最基本的存储单元,其要素包括变量名、变量类型和作用域typevarName[=value][{,var......
  • three.js第四十九用 连续运算符号封装
    threejs交流群511163089functionSubV(a,b,normalize=false){if(normalize)returna.clone().sub(b).normalize();returna.clone().sub(b);}functionAddV(......