JAVA语言基础的学习

JAVA语言基础的学习

1.Java语言基础(各种进制的表现形式以及互相转化方法)

  • 二进制:由0,1组成,且在JAVA代码编写中以0b开头

  • 八进制:由0,1,…7组成,且在JAVA代码编写中以0开头

  • 十进制:由0,1,…9组成且整数默认是十进制的

  • 十六进制:由0,1,…9,a,b,c,d,e,f组成,且在JAVA代码编写中以0x开头

  • 任意进制到十进制的转换原理:位权展开法

    • 公式可表示为系数*基数的权次幂
  • 十进制转化为任意进制:除K取余法(K为你想要转化的进制),最后余数反转。

2.原码反码补码的互相转换

  • 原码 , 反码 , 补码为有符号数据表示法的几种方式,并且所有数据的运算方式都是以补码为基础的。

  • 原码

    • 使用二进制将原数字转化,将最高位设为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。
  • 反码

    • 符号位不变,其余位全部变为与原码相反的数字,如0变为1,1变为0。
  • 补码

    • 在反码的末位加1,如有需要则进位。
  • 正数的反码与补码与原码相同。

3.JAVA中变量与数据类型简述

  • 变量的定义
    与常量不同,变量在被定义以后是可以人为将其改变,实质上是内存上的一小块区域,通过赋值的不同而被定义为不同的量。
  • 定义变量的原因:用来不断的存放同一类型的常量,并可以重复使用
  • 变量的定义格式:
    • 数据类型 变量名 = 变量值 ;
    • int a=5;

4.数据类型简述

  • 数据类型
    对于不同的变量,为了能够最合理的利用空间,需要定义出不同大小不同长度的数据类型来装下不同的变量。

  • Java中数据类型的分类:分为两大类

    • 基本数据类型

      • 基本数据类型的详细讲解
        (1): 数值型

        整数型字节数范围
        byte8bit(1)-128 ~ 127
        short16bit(2)-2^15 ~ 2^15 - 1
        int32bit(4)-2^31 ~ 2^31 - 1
        long64bit(8)-2^63 ~ 2^63 - 1

        浮点型字节数范围
        float32bit(4)-3.40310^38 ~ 3.40310^38
        double64bit(8)-1.79810^308 ~ 1.79810^308

        (2): 字符型

        名称字节数范围
        char16bit(2)0 ~ 2^16 - 1 = 65535

        (3): 布尔型

        名称字节数包含
        boolean8bit(1)true,false
    • 引用数据类型: 数组 , 类 , 接口

    • 整数默认是int类型的 , 浮点数默认是 double类型的

  • 使用变量时需要注意的细节

    • 作用域问题:变量定义在哪一级大括号中,哪个大括号的范围就是这个变量的作用域。相同的作用域中不能定义两个同名变量。
    • 初始化值问题:没有初始化值不能直接使用
    • 在一行上建议只定义一个变量

5.变量的隐式转换

  • 当两个byte类型的变量相加的时候,所得到的值的类型还是byte类型的吗?
    • 当byte,short,char类型的数值相加的时候,将自动转换成int类型
    • 如有long类型的数据参与计算,则结果转化为long类型
    • 若有浮点型数据参与运算,则结果转化为float或double类型
  • 其它默认转换规则
    • boolean类型不能转换为其他的数据类型
    • byte,short,char之间不转换

6.变量的强制转换

  • 若不想进行变量的隐式转换,则可以通过强制转换的方式将结果强制转换
    • 强制转换的格式:
      目标数据类型 变量名=(目标数据类型)(被转换的数据);
    • 例:int a=(byte)(c+d)
    • 强制转换的注意事项
      尽量不要使用强制类型转化,因为可能存在损失精度的问题。

7.字符和字符串参与运算

  • 若有字符参与运算,则引入ASCII表、

    • ASCII码表较长,但可以通过记住几个关键数据推出其他的值,如:‘0’ =48,‘A’ =65,‘a’= 9
  • 加号在有字符串参与中被称为字符串连接符

    • 例如:

      System.out.println("hello" + 6 + 1);
      System.out.println(6 + 1 + "hello");
      第一个结果为hello61
      第二个结果为7hello
      

8.算术运算符概述

  • 对常量和变量进行操作的符号称为运算符
  • 运算符的分类:
    • 算术运算符
    • 赋值运算符
    • 比较运算符
    • 逻辑运算符
    • 位运算符
    • 三目运算符
  • 算术运算符:+,- , * , / , % , ++ , –

9.算术运算符++和–的用法(容易搞混)

  • ++,–运算符的作用

    • 自加(++)自减(–)运算

    • ++:自加。对原有的数据进行+1

    • –:自减。对原有的数据进行-1

    • 若不参与运算,则++符号放前放后无影响,如参与运算:

      • 放在操作数的前面,先自增或者自减,然后再参与运算。

      • 放在操作数的后面,先参与运算,再自增或者自减。

      • 例:

        1.
        int a = 10;
        int b = 10;
        int c = 10;
        a = b++;
        c = --a;
        b = ++a;
        a = c--;
        得出答案为:
        a=9
        b=10
        c=8
        2.	
        int x = 4;
        int y = (x++) + (++x) + (x*10);
        y=4+6+60=70
        x=6
        

10.赋值运算符

  • 赋值运算符:
    • =, +=,-=,*=,/=,%=
  • 累加等符号:
    • 可基本等效看为:a=a+5——a+=5
    • 累加等符号带有强制转换的作用。

11.总结

​ 今日主要介绍的是JAVA语言中的各类规则与细节,重要的地方如变量的隐式转换和强制转换等,而且对于初学者来说在参与运算时,变量的++与–的前后关系很容易让人搞混,需要仔细辨别,并且累加等运算符号会带有强制转换的功能,需要额外注意,JAVA语言中的细节也是非常多,需要在以后的学习中牢记。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值