达内java笔记2013-基础2_第1页
达内java笔记2013-基础2_第2页
达内java笔记2013-基础2_第3页
达内java笔记2013-基础2_第4页
达内java笔记2013-基础2_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

day02AM

########################################

java的变量

1.在逻辑上是一个代词

2.在计算机内部,代表一个数据

逻辑上的代词映射到计算机识别的数据

java是强类型语言:变量时强类型的

1、变量必须用明确类型声明,

2、变量必须初始化以后才能使用

3、变量作用域,离开作用域回收

4、变量不能重复定义

违反了就有编译“错误”

day02程序

java

1、语法规则,与编译错误

2、面试:面试题利用编译错误的语法规则考题

编译错误与运行异常的区别?

intage;

System.out.println(age);

A、编译错误B、运行异常C、0D、age

System.out.println(ago);

单词打错了,ago没有声明

java的数据类型

进制基础

***************

编程使用等宽体

general--appearance--colorsandfonts--basic---textfont

字体

dejavuLGCSansMono等宽字体

***************

计数的规律:(例子:算盘)

十进制计数规则:逢10进1的计数规则

权:10000、1000、100、10、1每个数位上代表1的个数

基数:10进位规则

数字:0123456789

权是基数的n次幂

2进制:逢2进1的计数规则

权:128、64、32、16、8、4、2、1每个数位上代表1的个数

基数:2进位规律

数字:01

权是基数的n次幂

102

00000

10001

20010

30011

40100

50101

60110

70111

81000

91001

101010

111011

121100

131101

141110

151111

2进制--》10进制

11000000(2)=128+62=192(10)

234-128=106-64=42-32=10-8=2

234(10)=11101010(2)

201-128=73-64=9-8=1

201(10)=11001001

218-128=90-64=26-16=10-8=2

218(10)=11011010

188-128=60-32=28-16=12-8=4

188(10)=10111100

day02PM

######################

练习Eclipseday02中demo02

inti=234;//java会将10进制“234”,转化为2进制赋值到i的内存中。在计算机内部,只有2进制数据Stringstr=Integer.toBinaryString(i);System.out.println(str);//y=f(g(x))System.out.println(Integer.toBinaryString(201));补码公式(计算机做负数运算)

补码:为了成本考虑,解决负数问题,利用大数作为负数使用。

补码一种算法的规定:以4位补码为例。

4位补码规定:

1.高位为1的数作为负数使用,

2.计算时候如果超过4位,自动溢出舍弃;

3.补码是有范围的数-8~7不能表示超范围数字

4.在不超过范围情况下,补码满足数学运算,避免进行溢出计算

5.补码有对称现象(取反对称性)

“~”取反运算,就是翻转01

~-1=0;~-2=1;~-3=2....

~-n=n-1

~0=-1

~1=-2

~2=-3

.....

=>~n=-(n+1)

=>~n=-n-1

=>1+~n=-n

根据1+~n=-n可以快速计算负数补码

6的补码0110=>取反1001=>+11010

1024位补码

8(-8)1000

9(-7)1001

10(-6)1010

11(-5)1011

12(-4)1100

13(-3)1101

14(-2)1110+1=1111数学上?+1=-1

15(-1)1111+1=(1)0000数学上?+1=0----上下对称性

00000

10001

20010

30011

40100

50101

60110

70111

补码的高位数推广

10进制2进制8位补码(byte)负数高位为1,正数高位为0128(-128)----10000000

129(-127)----10000001

130(-126)----10000010

(-8)100011111000(-7)100111111001(-6)101011111010(-5)101111111011(-4)110011111100(-3)110111111101(-2)111011111110(-1)111111111111+1=(1)00000000括号舍弃

000000000000010001000000012001000000010300110000001140100000001005010100000101601100000011070111000001118----000010009----0000100110----00001010...----........

126----01111110127----01111111

32位(-21个亿到21个亿)正数补0,负数补1

min------------10000000000000000000000000000000

.............................................

-129------------11111111111111111111111101111111

-12811111111111111111111111110000000....

-1-----------11111111111111111111111111111111

0-----------00000000000000000000000000000000

1

12800000000000000000000000010000000

12900000000000000000000000010000001-------------------------------

max-----------01111111111111111111111111111111

面试题:

关于学习java的补码建议:

1.java中的数是补码(负数高位为1,正数高位为0,高位也称之为符号位)

2.java采用补码计算,注意计算范围,避免超范围计算,避免溢出

3.补码有正数和负数记住关键数字:-10maxmin的补码

int

min:10000000000000000000000000000000

-1:11111111111111111111111111111111(常用数字)

0:00000000000000000000000000000000

max:01111111111111111111111111111111

-2=-1-1;-3=-1-1-1

考试题:

4.记住推论:-n=~n+1=>-n-1=~n

system.out.println(~-6)//~6=-(-6)-1=5

面试题:

5.16进制是2进制的简写形式

是2进制每4位对应1位的简写

本质上16进制就是2进制

16进制:是逢16进1的计算规则

权256161每个数位上代表1的个数

基数:2进位规则

数字:0123456789abcdef

101112131415

权是基数的n次幂

141(16)=1*256+4*16+1=321(10)

10162

00000000000101000000012020000001030300000011404000001005050000010160600000110707000001118080000100090900001001100a00001010110b00001011120c00001100130d00001101140e00001110150f00001111161000010000171100010001

181200010010191300010011

...

654101000001

664201000010

...

192c011000000

...

255ff11111111

----------补齐-------------------

min:10000000000000000000000000000000

-1:11111111111111111111111111111111(常用数字)

0:00000000000000000000000000000000

max:01111111111111111111111111111111

缩写:

min:80000000

-1:ffffffff

0:00000000

max:7fffffff

8种基本类型

整数

byte:-128~127

short:-32768~32767

int:-21个亿~21个亿-2147483648~2147483647

long:

浮点数

double:

float:

char

布尔

直接量:就是直接写出的数字

inti=5i是变量,而5是直接量(直接写出来的数)0xffff;

java中整数字面量(直接量)默认都是整数(int)

所有的直接量默认都是int类型

longl=20000000000;//编译错误,直接量超出

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论