当前位置:   article > 正文

Java03--IDEA与运算符,原反补码

Java03--IDEA与运算符,原反补码

一、IDEA

IDEA全称IntelliJ IDEA,是用于Java语言开发的集成环境,它是业界公认的目前用于Java程序开发最好的工具。

集成环境

把代码编写,编译,执行,调试等多种功能综合到一起的开发工具。

下载

IntelliJ IDEA – the Leading Java and Kotlin IDEIntelliJ IDEA is undoubtedly the top-choice IDE for software developers. It makes Java and Kotlin development a more productive and enjoyable experience.icon-default.png?t=N7T8https://www.jetbrains.com/idea/

激活码

夸克网盘分享夸克网盘是夸克推出的一款云服务产品,功能包括云存储、高清看剧、文件在线解压、PDF一键转换等。通过夸克网盘可随时随地管理和使用照片、文档、手机资料,目前支持Android、iOS、PC、iPad。icon-default.png?t=N7T8https://pan.quark.cn/s/d0c0eeb804b4

 项目结构

project(项目)

        module(模块)

                package(包)

                        class(类)

如何新建项目,模块,包和类?

1.创建一个Empty project项目

2.创建模块

SDK要编辑一下,会有提示的

新建模块

3.创建包

4.创建类

最后

一些建议和按键

最好把AI给关了

取消选择设置中 Editor > General > Code Completion 的 Enable Full Line Suggestions 即可

注释和取消注释代码

使用快捷键对代码行和代码块进行注释和取消注释:Ctrl斜杠:用于单行注释(/l...)

Ctrl Shift斜杠:用于块注释(/*...*/)

查找并替换

按Ctrl F可显示搜索栏。按Ctrl R可添加另一个字段,从中可以输入替换字符串。在在文件中查找对话框中,可以按Ctrl Shift R切换到"替换为”。同样,按Ctrl Shift F可隐藏替换为字段,并切换到常规搜索。

psvm        

public static void main(String[] args)

sout

System.out.println();

二、运算符

1.运算符和表达式

运算符

对字面量或者变量进行操作的符号

表达式

用运算符把字面量或者变量连接起来,符合java语法的式子就可以称为表达式。

不同运算符连接的表达式体现的是不同类型的表达式。

举例说明

int a = 10;        int b = 20;        int c = a + b;

+∶是运算符,并且是算术运算符        a+ b:是表达式,由于+是算术运算符,所以这个表达式叫算术表达式

算术运算符

+  -  *  /   %

  1. package demo1;
  2. public class test{
  3. public static void main(String[] args) {
  4. //+
  5. System.out.println(3 + 2);
  6. //-
  7. System.out.println(5 - 1);
  8. //*
  9. System.out.println(7 * 9);
  10. //如果在计算的时候有小数参加
  11. //结论:结果有可能不精确的
  12. System.out.println(1.1 + 1.1); //2.2
  13. System.out.println(1.1 + 1.01); //2.1100000000000003
  14. System.out.println(1.1 - 1.01); //0.09000000000000008
  15. System.out.println(1.1 * 1.01); //1.1110000000000002
  16. //后面分析为什么小数的结果精确问题
  17. }
  18. }
  1. package demo1;
  2. public class test{
  3. public static void main(String[] args) {
  4. // /
  5. //1.整数参与计算,结果只能得到整数
  6. //2.小数参与计算,结果有可能是不精确的,如果我们需要精确计算,那么需要用到后面的知识点。|
  7. System.out.println(10 / 2);
  8. System.out.println(10 / 3); // 3
  9. System.out.println(10.0 / 3); // 3.3333333333333335
  10. //后面分析
  11. // %
  12. System.out.println(10 % 2);
  13. System.out.println(10 % 3); // 1
  14. }
  15. }

练习:数值拆分

需求:键盘录入一个三位数,将其拆分为个位、十位、百位后,打印在控制台

  1. package demo1;
  2. import java.util.Scanner;
  3. public class test{
  4. public static void main(String[] args) {
  5. // 键盘录入
  6. Scanner sc = new Scanner(System.in);
  7. System.out.println("请输入一个三位数: ");
  8. int number = sc.nextInt();
  9. // 获取个位,十位,百位
  10. int ge = number % 10;
  11. int shi = (number / 10) % 10;
  12. int bai = (number / 100) % 10;
  13. System.out.println("个位是:"+ge);
  14. System.out.println("十位是:"+shi);
  15. System.out.println("百位是:"+bai);
  16. }
  17. }

"+”操作的三种情况

数字相加        字符串相加        字符相加

如何转换?

1.隐式转换(自动类型提升)

        把一个取值范围小的数值,转成取值范围大的数据

        int a = 10;        double b = a;

        取值范围:byte<short<int<long<float<double

隐式转换的两种提升规则:

        取值范围小的,和取值范围大的进行运算,小的会先提升为大的,再进行运算

        byte short char三种类型的数据在运算的时候,都会直接先提升为int,然后再进行运算

2.强制转换

        如果把一个取值范围大的数值,赋值给取值范围小的变量。是不允许直接赋值的。如果一定要这么做就需要加入强制转换

        格式:目标数据类型变量名=(目标数据类型)被强转的数据;

        但是要注意取值范围

字符串的“+”操作

"+”操作中出现字符串时,这个“+”是字符串连接符,而不是算术运算符了。会将前后的数据进行拼接,并产生一个新的字符串。

连续进行"+"操作时,从左到右逐个执行。

字符相加

当(字符+字符)(字符+数字)时,会把字符通过ASCII码表查询到对应的数字再进行计算。

自增自减运算符、赋值运算符、关系运算符、逻辑运算符

与c语言同理

细节:+=,-=,*=,l=,%=底层都隐藏了一个强制类型转换

这里有所不同,单个且有异或操作

短路逻辑运算符

注意事项:

& l,无论左边true false,右边都要执行。

&& ||,如果左边能确定整个表达式的结果,右边不执行。

&&:左边为false,右边不管是真是假,整个表达式的结果一定是false。

||:左边为true,右边不管是真是假,整个表达式的结果一定是true。

三元运算符

格式:关系表达式?表达式1:表达式2;

三、原码、反码、补码

原码

原码:十进制数据的二进制表现形式,最左边是符号位,0为正,1为负

56  ——>   0(符号位)0111000(数据)       bit 比特位    8个bit1字节   

显然利用原码对正数进行计算是不会有问题的。但是如果是负数计算,结果就出错,实际运算的结果,跟我们预期的结果是相反的。 但是如果是负数计算,结果就出错,实际运算的结果,跟我们预期的结果是相反的.

所以出现了反码

反码

反码:为了解决原码不能计算负数的问题而出现的。

计算规则:正数的反码不变,负数的反码在原码的基础上,符号位不变数值取反,0变1,1变0。

-56 ——>  10111000   (原码)

-56 ——>  11000111 (反码)

反码出现的目的

        为了解决原码不能计算负数的问题而出现的。

反码的计算规则

        正数的反码不变,负数的反码在原码的基础上,符号位不变。数值取反,0变1,1变0。

反码的弊端

        负数运算的时候,如果结果不跨0,是没有任何问题的,但是如果结果跨0,跟实际结果会有1的偏差。

补码

对于负数来说在反码基础上加1,用于解决正负数相加的问题

所以:

        1字节值为-128~127

补码出现的目的

        为了解决负数计算时跨0的问题而出现的。

补码的计算规则

        正数的补码不变,负数的补码在反码的基础上+1。另外补码还能多记录一个特殊的值-128,该数据在1个字节下,没有原码和反码。

补码的注意点

      计算机中的存储和计算都是以补码的形式进行的。  

注意:

隐式转换就是往前面补0

强制转换就是去掉0

其他运算符

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Li_阴宅/article/detail/984508
推荐阅读
相关标签
  

闽ICP备14008679号