Java基本程序设计结构

1.注释

单行注释——//

多行注释——/*  */

1 public class Main {
2     public static void main(String[] args) {
3         //这是一个单行注释
4
5         /*
6          * 这是一个多行注释
7          */
8     }
9 }

2.数据类型

整型

在Java中,数字均为有符号整数,不存在无符号整数,数字在计算机中可以有三种编码方式:

原码:最高位为符号位,其余位为数字的绝对值的二进制表示。

[1]=[0000 0001]  [-1]=[1000 0001]

反码:最高位为符号位,其余位如果数字为正数则为其原码值;如果数字为负数则在其原码基础上按位取反。

[1]=[0000 0001]  [-1]=[1111 1110]

补码:最高位为符号位,其余位如果数字为正数则为其原码值;如果数字为负数则在其反码技术上加1.

[1]=[0000 0001]  [-1]=[1111 1111]

基于简化CPU硬件设计的考虑,将减法运算器整合到加法运算器中,因此,在计算机中,数字基本是以其补码的形式进行存储的

对于由a位二进制位表示的数字,0<=m<2(a-1),0<m<2(a-1)m-n=m+2(a-1)-n-2(a-1)。其中2(a-1)-n为-n的补码。

对于有符号整数,只有在两个相同符号的数进行加法操作的情况下,才会产生进位操作。而如果把符号位也按照普通的二进制位参与到计算中,如果只有次高位有进位操作或只有符号位有进位操作,表示结果的数值已经超过了a位二进制数可以表示的数值范围。

在书写数字时,可以以0x前缀使用十六进制表示数字,以0前缀使用八进制表示数字,以0b前缀使用二进制表示数字(Java7+),使用十进制表示数字。

byte:

使用1字节存储数字。

short:

使用2字节存储数字。

int:

使用4字节存储数字。

long: 

使用8字节存储数字。

浮点型

在Java中,浮点数以IEEE754规定的浮点数表示法为标准存储浮点数,该表示法是一种科学计数法,用符号、指数、尾数来表示。

float:

使用4直接存储数字,以1位二进制位为符号域,8位二进制位为指数域,23位二进制位为小数域,指数偏移量为127。

double:

使用8直接存储数字,以1位二进制位为符号域,11位二进制位为指数域,52位二进制位为小数域,指数偏移量为1023。

Double类中存在三个特殊的常量值,Double.POSITIVE_INFINITY-正无穷大,Double.NEGATIVE_INFINITY-负无穷大,Double.NaN-非数字,在进行相应的验证时,需要调用相应的方法进行验证。

字符型

在不同的编码集中,字符的编码方案各不相同。

代码点:指与一个编码表中某个字符对应的代码值。

代码单元:在基本的多语言级别中,每个字符用16位表示,通常被称为代码单元。

char:

在Java中,char类型用UTF-16编码描述一个代码单元,其中辅助平面内的字符需要一对char来表示。在JAVA5之后,开始支持增补字符集。

Unicode规范涉及两个步骤:

  1. 定义一个规范,给所有的字符指定一个唯一对应的数字。
  2. 将字符对应的数字保存在计算机中。

在Unicode中,代码点被分为17个平面,每个平面包含65536个码位。第一个平面称为基本多文本平面,其余平面被称为辅助平面。在基本多文本平面内,从U+D800到U+DFFF之间的码位区段是永久保留,不映射到字符。

UTF-16中,辅助平面内的字符被编码为一对16比特长的码元,称为代理对。第一部分称为高位代理或签到代理,码位从U+D800到U+DBFF。第二部分称为地位代理或后尾代理,码位从U+DC00到U+DFFF。

转换方式为:

  1. 将字符值减去0x10000,结果范围0x0000到0xFFFFF。
  2. 将结果的高10位与0xD800做逻辑或运算,低10位与0xDC00做逻辑或运算。
  3. 将两部分组合起来就是该字符值的UTF-16编码。

UTF-8使用一个字节或两个字节或三个字节来编码Unicode。

0xxxxxxx,使用一个字节表示一个Unicode代码点,可表示128个字符。

110xxxxx 10xxxxxx,使用两个字节表示Unicode代码点,可表示2048个字符。

110xxxxx 10xxxxxx 10xxxxxx,使用三个字节表示Unicode代码点,可表示65536个字符。

EF BB BF  UTF-8

FE FF    UTF-16/UCS-2,little endian

FF FE    UTF-16/UCS-2,big endian

FF FE 00 00  UTF-32/UCS-4,little endian

00 00 FE FF  UTF-32/UCS-4,big endian

布尔型

boolean:

用于逻辑运算,有true和false两个值。

参考资料:

http://www.cnblogs.com/zhangziqiu/archive/2011/03/30/ComputerCode.html

http://www.cnblogs.com/effulgent/archive/2011/10/30/two_s_complement.html

http://blog.csdn.net/shangboerds/article/details/7498317

http://www.cnblogs.com/kingcat/archive/2012/10/16/2726334.html

http://www.ibm.com/developerworks/cn/java/j-unicode/

时间: 2024-10-15 06:08:22

Java基本程序设计结构的相关文章

Java核心技术 卷1 读书笔记 (3 Java基本程序设计结构)

3.3 数据类型 Java是强类型语言,必须为每一个变量声明一种类型. 3.3.1 整型 Java 提供四种整型 int 4字节 short 2字节 long 8字节 byte 1字节 长整型(long)数值有一个后缀L(例如40000000000L),十六进制数值有一个前缀0x(例如0xCAFE),八进制数值有一个前缀0(例如010). 3.3.2 浮点型 Java提供两种浮点类型 float 4字节 double 8字节 float类型的数值有一个后缀F(例如3.42F),没有后缀F的浮点数

java 基本程序设计结构 一

首先Java区分大小写.如果出现了大小写拼写错误,程序无法运行. java 变量名字必须以字母开头,后面可以跟字母数字的任意组合.长度基本上没有限制.但是不能使用java保留字. 标准的命名规范:类名是以大写字母开头的名词.如果名字由多个单次组成,每个单词的第一个字母都应该大写(这种在一个单词中间使用大写字母的方式称为骆驼命名法.应该写成CamelCase). 源代码的文件名必须与公共类的名字相同,并用.java作为扩展名.例如: public class FirstSample { ... }

201671010142 Java基本程序设计结构学习的感悟

1.在课堂检测过程中发现自己很大的问题,有些是在学习c语言时就遗留下来的问题,比如对于自加自减,强制类型转换的问题,在Java中又多了一个数据类型就是字节型,而且当字节想加就会自动生成int型,必须进行强制类型转化.布尔类型输出结果就是ture或者就是false,掌握到与c语言的不同. 2.对于数组也有明显的不同.java在数组声明时并不为数组分配空间内存.对于数组的拷贝,java允许把一个数组变量拷贝给另一个变量时,两个变量都指向相同的数组.对于各种语句的学习,语其他与语言的逻辑思维几乎一样.

J4. Java基本程序设计结构之数据类型与精度问题

1.1 数据类型 Java中的数据类型分为基本数据类型和引用数据类型两种.关于引用类型,我们在后面的学习中会逐渐理解的,这里不再赘述,重点介绍基本数据类型.在Java中有8种基本数据类型来存储数值.字符和布尔值,如图4.1所示. 图4.1   Java数据类型 1.3.1 整数类型 整数类型用来存储整数数值,即没有小数部分的数值.可以是正数.负数,也可以是0.根据所占内存的大小不同,可以分为byte.short.int和long 4种类型.他们所占的内存和取值范围如表4.2所示.整数默认的类型为

201771010117马兴德 实验二 Java基本程序设计(1)

实验二 Java基本程序设计(1)  第一部分    理论知识的学习. 第三章Java基本程序设计结构 1  基本知识: (1)标识符:标识符由字母.下划线.美元符号和数字组成,且第一个符号不能为数字.比如Hello,$1234都是合法的字符:同时标识符也可用作类名.变量名.方法名.文件名等. (2)关键字:关键字就是Java语言中被赋予特定意义的一些单词.比如 class.public.try等,但是关键字不能用作变量名. (3)注释:Java有三种注释方法,如://./*和*.(定义一个注释

201771010142 张燕 Java的基本程序设计结构第二周学习总结

第三章 Java的基本程序设计结构 第一部分 理论知识学习部分 一 基本知识: 1.标识符:由字母.下划线,美元符号和数字组成,第一个符号不能为数字,可以用作类名.变量名.方法名.数组名和文件名等. 2.关键字:Java语言中已经被赋予特定意义的一些单词,关键字不能作为变量名. 3.注释:①//②/*和/*③/**开始,*/结束 二 数据类型: 整数类型(int. short. long. byte)浮点类型(float. double )字符类型(char)浮点类型(float double)

java的基本程序设计结构

java的基本程序设计结构 这一系列Java基础的博客,均为扎实自己的java基础,一为面试.二为走得更远 数据类型 这个很基础,面试真的被问到过,虽然不影响面试结果,但是还是记一下,哈哈哈哈哈. 在java中,一共有八种基本类型,其中有4中整形,2中浮点类型,1个字符类型,1个表示真值的类型 整型 类型 存储需求 取值范围 byte 1个字节 -128 —— 127 short 2个字节 -32768 —— 92767 int 4个字节 约莫着 -21亿 —— 21亿 long 8个字节 这个

第一部分:Java基础程序设计

Java(a)--Java 基础程序设计 Java 语言介绍(认识JAVA) JVM(Java虚拟机):JVM是可运行java代码的假想计算机,其保证了java可以进行跨平台地运行,亦即其可移植性,也符合sun公司提出的口号:Write Once, Run Anywhere.(一次编写,处处运行) 运行示意图如下:(由于图片无法加载,因此暂时不上传) Java技术的架构包括三个方面: J2EE(Java 2 Platform Enterprise Edition)企业版,是以企业为环境而开发应用

java基础学习03(java基础程序设计)

java基础程序设计 一.完成的目标 1. 掌握java中的数据类型划分 2. 8种基本数据类型的使用及数据类型转换 3. 位运算.运算符.表达式 4. 判断.循环语句的使用 5. break和continue的区别 二.数据类型划分 java的数据类型可分为基本数据类型与引用数据类型.基本数据类型包括了最基本的boolean.char.byte.short.int.long.float.double;引用数据类型是以一种特殊的方式指向变量的实体,这种机制类似于C/C++. 三.基本数据类型 j