5.6 Java注释,变量,数据类型简单学习笔记

注释

解释说明代码的文字,为了提高代码阅读性

分为两种:

        1>普通注释:

                单行        //

                多行        /* */

        2>特殊注释:

                文档        /** */

关键字

在Java语言中,被赋予特殊含义的单词,在高级记事本及IDEA工具中,关键字有特殊颜色标记

1>class        标记需要定义一个类

2>public       权限修饰符,访问权限足够大

3>static        静态修饰符

4>void          定义方法的一种格式

标识符

组成:

        1>英文26个字母(区分大小写)

        2>数字0~9

        3>美元符号 $

        4>下划线 _

定义变量时,注意:

        1>数字不能开头

        2>严格区分大小写

        3>不能有其他符号

        4>不能是关键字

变量

在程序运行过程中,不断发生改变的量

定义:

        1>数据类型

        2>变量名    符合标识符规则

        3>初始化数值

                int a = 100 ;

数据类型分为两大类:基本数据类型和引用数据类型

基本数据类型分为四大类八大种:

        1>整数类型:

                byte        字节类型        占1个字节        范围是-128~127

                short       短整型           占2个字节

                int           整型(默认)      占4个字节        范围是-2^31~2^31-1

                long        长整型            占8个字节

                        注:定义长整型时,数据后面要加上L或者l,一般大写

                            1个字节 = 8个bit

        2>浮点类型:

                float        占4个字节

                double    占8个字节        默认

        3>字符类型

                char        占2个字节

        4>布尔类型

                boolean   占1个字节

引用数据类型:

        数组,类,接口

数据类型转换

1>隐式类型转换(默认类型提升)

        byte,short,char三者之间不会相互转换

        其中byte,short一旦参与运算,会自动提升为int,long,float,double...

2>显式类型转换(强制转换)

        将大数据类型转为小数据类型        可能会有精度损失

        格式:

        目标数据类型 变量名 = (目标数据类型)(初始化数值) ;

        例:

                byte a = (byte)129 ;        因为129超出byte的范围,所以默认为int类型

        最后a的结果是-127

运算结果:

        计算机底层对数据的计算是使用这个数据的补码进行的,我们看到的是原码

        注:正整数的原,反,补码一致

             负整数的反码在原码基础上,最高符号位不变,数值位取反

             负整数的补码在反码基础上,最高符号位不变,数值位+1

129

原码:00000000 00000000 00000000 10000001

强转为byte

补码:10000001        最高符号位为1,代表负整数

反码:10000000

原码:111111111        值为 -127

作业:

1.(标识符命名)下面几个变量中,那些是对的?那些是错的?错的请说明理由
A. ILoveJava        对
B. $20                  对
C. learn@java      错,标识符中没有@
D. antony.lee        错,标识符中没有.
E. Hello_World     对
F. 2tigers              错,变量命名不能以数字开头

2.(基本类型的运算)一家商场在举行打折促销,所有商品都进行8 折优惠。一位程序员把这个逻辑写成:
short price = ...; // 先计算出原价
short realPrice = price * 8 / 10; //再计算出打折之后的价格
问:这段代码是否正确?如果正确,假设price 为100,那计算之后的realPrice值为多少?如果不正确,应该怎么改正?

答:代码不正确,第二行的运算中,等号右边的结果是int类型,而左边是short类型接收,会出现精度损失
改:int realPrice = price * 8 / 10 ;

3.
        第一题:
        byte b1=10,b2=20,b;
        b=b1+b2;
        b=10+20;
        哪句是编译失败的呢?为什么呢?

        第二题:
        byte  x = 129;
        有没有问题?有问题如何解决?结果是多少呢? 写出运算过程
第一题:
b = b1 + b2 ;    这行会编译失败,因为变量b是byte类型,而b1和b2进行运算时,会自动提升为int类型,以byte类型接收int类型数据,会出现精度损失
改:b = (byte)(b1 + b2) ;    使用强转将int类型变成byte类型
第二题:
byte的范围是-2^(8-1)~2^(8-1)-1  -->  -128~127        系统默认129为int类型,所以会出现精度损失
改:
byte x = (byte)129 ;    将129强制转换为byte类型,结果是-127
运算结果:
    int 129
    正数原码,反码,补码一致
    原码:00000000 00000000 00000000 10000001
    强制转换为 byte    高位符号为1,是负数
    补码:10000001
    反码:10000000
    原码:11111111
    数值为 -127

4:计算出十进制46对应的二进制,八进制,十六进制的值。
(可用计算器验证你算的是否正确)
46 -->0B101110 -->056 -->0x2E
46%2  23---0
23%2  11---1
11%2    5---1
  5%2    2---1
  2%2    1---0
  1%2    0---1
----------------
0B101 110
056
----------------
0B0010 1110
0x2E

5:什么是变量?变量的定义格式?要使用变量需要注意什么?
程序运行过程中,不断发生变化的量就是变量
定义格式:
    数据类型 变量名 = 初始化数值 ;
注意:
    1>要有数据类型
    2>要有变量名 变量名使用"小驼峰命名法"
    3>要有初始化数值

6:Java中的数据类型分几类?基本数据类型有哪些?
数据类型分为基础数据类型和引用数据类型
基础数据类型分4大类8大种:
1>整数类型:byte short int(默认) long
2>浮点类型:float double(默认)
3>字符类型:char
4>布尔类型:boolean

7:Java中的显式转换和隐式转换分别是什么?为什么要使用显式转换(强转)
隐式转换:(默认类型提升)
    byte,short,char 三者之间不会相互转换,其中byte和short参与运算后,会自动提升为int类型
显式转换:(强制转换)
    目标数据类型 变量名 = (目标数据类型)(初始化值) ;
显性转换为了将大数据转为小数据,避免short类型数据运算结束后不能使用short类型变量接收

8.编程题: 请将两个变量的数据值进行互相交换,例如int a =10 ;int b = 20 ;最后a是20 b是10
int a = 10 ;
int b = 20 ;
int c ;
c = a ;
a = b ;
b = c ;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值