Java基础复习之一篇:关健字,标识符,注释,常量,进制转换,变量,数据类型,数据类型转换
1、关健字
1.1、被Java语言赋予特定意义的单词(如:class,interface,public ,static)
1.2、全部是小写
1.3、注意事项(goto和const作为关健字保留起来)
2、标识符
2.1、给类,接口,方法,变量起名字的字符
2.2、组成规则(A:英文大小写,B:数据,C:$ _)
2.3、注意事项(不能为数字开头,不能是java中的关健字,区分大小写)
2.4、常见的命名规则(见名知意)
A:包 全部是小写
单级包:小写 如:peng,com
多级包:小写 如:cn.hcc,ts.hnyj,com.baidu
B:类与接口:
一个单语:首字大写 如 Hello,Student
多个单词:每个单词首字大写 如HelloWorld,StudentName
C:方法与变量:
一个单词:首字小写 如name,main,get
多个单词:首字小写,从第二单词开始首字大写 如showAllStudents,getPersonName,className
D:常量: 全部大写
一个单词时:全部大写
多个单词时:多部大写同时每个单词之间用_分开 如 MAX_AGE
3、常量
3.1 在程序执行的过程中,其值不发生改变的量
3.2 分类:
3.2.1、字符串常量 "hello",
3.2.2、整数常量 12,23,
3.2.3、小数常量 12.33,
3.2.4、布尔常量 true,false
3.2.5、字符常量 'a','b'
3.2.6、空常量
3.3 在Java中针对整数常量提供了四种表现形式
A:二进制 以0,1组成,以0b开头
B:八进制 以0---7组成,以0开头
C:十进制 以0----9,整数默认是十进制
D:十六进制 以0----abcdef(大小写都可以)以0x开头
4、进制之间接转换
其它进制转换到十进制的方法是:
1112 = 1*10^3 + 1*10^2 + 1*10^1+2*10^0 = 1000+100+10+2 = 1112
0b00001010 = 1*2^3 + 1*2^0 = 8 + 2 = 10
02120 = 2*8^3 + 1*8^2 +1*8^1 = 1024+128+16 = 1104
0xa02 = 10*16^2+0+2*16^0 = 2560+2 = 2562
二进制到十进制的互转
0b10100100=128 64 32 16 8 4 2 0============128+32+4==========164(看位得值法)
十制转其它进制的方法:除基到商为0取余反转过来就是他的值
21转二进制:10101
5、变量与数据类型:
1、基本类型:4类8种 占用字节数(一个字节占8位)
1.1、整型:1.1.1 、 byte 1-------
1.1.2、 short 2
1.1.3、 int 4
1.1.4、 long 8
1.2、浮点型:
1.2.1、float 4
1.2.2、double 8
1.3、布尔 true/false 1
1.4、字符 char 2
注意:整数默认是int,浮点默认是double long定义时加L/l float 定义时加F/f
默认转换:是由小到大:byte char short(前三者不互相转换,是直接转换成int)---------->int------------>long------------->float-------->double
强制转换是由大到小:是默认反转过来可能丢失精度,一般不见建议
思考题:
float f1=12.36f 与float f2=(float)12.36;有区别?
下面的程序有问题吗?如果有,在哪里?
byte b1 = 3;
byte b2 = 4;
byte b3 = b1 + b2;------这里会有问题:因为两个变量相加首先转成int然后再加 int------->byte就会有问题
byte b4 = 3 + 4;----这个没有问题
下面的操作结果是什么?
byte b=(byte)130; -126要了解它的计算方法
130转成二进制是00000000 00000000 00000000 10000010-------->但由于是强转成byte 前面三位都将去掉只留
----------->最高是1说明是负数 存在计算机中是以补码的形式存在:所以是求负数的反,原码
反码:1----------->00000 01
原码:1---------->11111 10
再转换十进制:-64+32+16+8+4+2===-126
再练习一次:
byte tt =(byte)150 tt=-106
2、引用类型:类,接口,数组,字符串
3、记得三个字符的ASCII码: a=97 A=65 0=48 这样可以计算出很多值出来
4、思考题:字符串参与的运算
System.out.println("hello"+'a'+1);======helloa1
System.out.println('a'+1+"hello");======98hello
System.out.println("5+5="+5+5);======5+5=55
System.out.println(5+5+"=5+5");===== 10=5+5
6、补充知识:
计算机是以补码存在的,
正数的原,反,补码都是一样最高位是(0)
负数的原,反,补码不一样最高位是(1) 原到反直接取反,最高位不变 反到补最高位不变+1
Java基础复习之一篇:关健字,标识符,注释,常量,进制转换,变量,数据类型,数据类型转换的更多相关文章
- 2 Java基础语法(keyword,标识符,凝视,常量,进制转换,变量,数据类型,数据类型转换)
1:keyword(掌握) (1)被Java语言赋予特定含义的单词 (2)特点: 所有小写. (3)注意事项: A:goto和const作为保留字存在. B:类似于Notepad++这种高级记事本会对 ...
- C语言基础:进制转换,变量,常量,表达式,基本数据类型,输出函数,输入函数,运算符. 分类: iOS学习 c语言基础 2015-06-10 21:39 25人阅读 评论(0) 收藏
二进制:以0b开头,只有0和1两种数字.如0101 十进制:0~9十个数字表示.如25 十六进制:以0~9,A~F表示,以0X开头.如0X2B 十进制转换为X进制:连除倒取余 X进制转换为十进制:按权 ...
- Java基础复习笔记系列 七 IO操作
Java基础复习笔记系列之 IO操作 我们说的出入,都是站在程序的角度来说的.FileInputStream是读入数据.?????? 1.流是什么东西? 这章的理解的关键是:形象思维.一个管道插入了一 ...
- Java基础复习笔记系列 九 网络编程
Java基础复习笔记系列之 网络编程 学习资料参考: 1.http://www.icoolxue.com/ 2. 1.网络编程的基础概念. TCP/IP协议:Socket编程:IP地址. 中国和美国之 ...
- Java基础复习笔记系列 八 多线程编程
Java基础复习笔记系列之 多线程编程 参考地址: http://blog.csdn.net/xuweilinjijis/article/details/8878649 今天的故事,让我们从上面这个图 ...
- Java基础复习笔记系列 五 常用类
Java基础复习笔记系列之 常用类 1.String类介绍. 首先看类所属的包:java.lang.String类. 再看它的构造方法: 2. String s1 = “hello”: String ...
- Java基础复习笔记系列 四 数组
Java基础复习笔记系列之 数组 1.数组初步介绍? Java中的数组是引用类型,不可以直接分配在栈上.不同于C(在Java中,除了基础数据类型外,所有的类型都是引用类型.) Java中的数组在申明时 ...
- Java语法基础(一)----关键字、标识符、常量、变量
一.关键字: 关键字:被Java语言赋予特定含义的单词.组成关键字的字母全部小写.注:goto和const作为保留字存在,目前并不使用.main并不是关键字. 二.标识符: 标识符:就是给类,接口,方 ...
- Java基础复习笔记基本排序算法
Java基础复习笔记基本排序算法 1. 排序 排序是一个历来都是很多算法家热衷的领域,到现在还有很多数学家兼计算机专家还在研究.而排序是计算机程序开发中常用的一种操作.为何需要排序呢.我们在所有的系统 ...
随机推荐
- 【转】oracle number与java中long、int的对应
Oracle数据库中number类型在hibernate的引用 1)如果不指定number的长度,或指定长度n>18 id number not null,转换为pojo类时,为java.mat ...
- Shell采集系统cpu 内存 磁盘 网络信息
cpu信息采集 cpu使用率 采集算法 通过/proc/stat文件采集并计算CPU总使用率或者单个核使用率.以cpu0为例,算法如下: 1. cat /proc/stat | grep ‘cpu0’ ...
- android 通过socket获取IP
如题<android 通过socket获取IP>: socket.getInetAddress().getHostAddress();
- android开发 WriteUTF与readUTF 原理
今晚上写代码玩,用到java.io.RandomAccessFile.writeUTF(String)函数,而文件默认保存为gbk,显然是乱码.突然想起来去看看存储编码规则,就去找了些文章了解writ ...
- 联想电脑win7旗舰版环境下的如何成功配置AppServ
联想电脑win7旗舰版环境下的如何成功配置AppServ 毕业设计中需要用Mysql数据库,并且想找一个方便Mysql数据库编程的开发工具,百度搜索了一下,AppServ集成环境安装包能快速搭建环境. ...
- PP生产订单的BADI增强 WORKORDER_UPDATE
METHOD if_ex_workorder_update~before_update. *---------------------->增强1 开始* "当生产订单类型为PP01时, ...
- [错误代码:0x80070002]IIS7及以上伪静态报错404
故障现象:DTCMS开启伪静态功能,VS2010预览正常,发布到IIS后报错404.0错误 (WIN7,WIN8,SERVER2008).模块IISWebCore通知MapRequestHandler ...
- C++中的RAII机制
http://www.jellythink.com/archives/101 前言 在写C++设计模式——单例模式的时候,在写到实例销毁时,设计的GC类是很巧妙的,而这一巧妙的设计就是根据当对象的生命 ...
- 理解Linux系统负荷[转]
一.查看系统负荷 在Linux系统中,我们一般使用uptime命令查看(w命令和top命令也行).(另外,它们在苹果公司的Mac电脑上也适用.) 二.一个类比 我们不妨把这个CPU想象成一座大桥, ...
- logback日志项目使用方法 - 150205交易模块添加日志信息logback,orderNo订单号为log主键便于跟踪,数字常量化,解决取消支付BUG,弱网络环境原因
1.项目里面的日志,便于跟踪数据的变更和异常错误信息产生.生产环境的日志级别是INFO,测试环境日志级别DEBUG,如果生产环境的日志级别是DEBUG,虽然方便查询问题,可以看到SQL语句等信息,但是 ...