暑假闲来无事,重新学习Java,希望能够加深自己对Java的理解与深入。
第一天,从Java标识符开始。
- 标识符必须以字母、下划线、美元符$开头。
- 标识符其它部分可以是字母、下划线、美元符$和数字的任意组合。
- Java标识符的大小写敏感,无长度限制(但是也不要太长,会变成裹脚布的(/ □ \))。
- 不可以是Java的关键字(这点只要是有点基础的都会知道啦,Java的关键字还挺多的哦,小心踩到地雷呀)。
下面是一个小栗子。
/* *测试标识符的写法 */ public class Welcome{ public static void main(String[] args){ int $abc = 3; int $ = 5; int _123=5; //int 123abc = 6; //标识符不能以数字开头 //int abc# = 3; //标识符不能包含除了字母、数字、下划线、$之外的其他字符 //int class = 3; //标识符不能是Java的关键字 int 博客园 = 10; //java内部采用了Unicode字符集,universal。 } }
从例子中看到最后一行中的变量名称是汉字,那他可不可以呢?以前从来没试过,在今天看到的视频中有这种介绍,拿过来实验后果然是可以的,感慨一句“实践才是检验真理的唯一标准”呀。究其原因是什么呢,正如注释中解释的那样,Java内部采用的是Unicode(universal code)的字符集,Unicode是国际通用字符集。Unicode分为UTF-8和UTF-16。UTF-8是一种可变的字符编码方式,可以是1个、2个或3个字节,而UTF-16有2个子节组成。汉字是由两个字节表示的,用Unicode字符集能够表示汉字,所以Java的标识符可以表示为汉字。当然了,如果是在开发的过程中,应该是不会有人选择用汉字来给标识符命名的,这样做是要承担很大的风险的。
Java的基本类型表
基本类型 | 大小 | 最小值 | 最大值 | 包装器类型 |
boolean | - | - | - | Boolean |
char | 16-bit | Unicode 0 | Unicode 216-1 | Character |
byte | 8-bit | -128 | 127 | Byte |
short | 16-bit | -215 | 215-1 | Short |
int | 32-bit | -231 | 231-1 | Integer |
long | 64-bit | -263 | 263-1 | Long |
float | 32-bit | IEEE754 | IEEE754 | Float |
double | 64-bit | IEEE754 | IEEE754 | Double |
void | - | - | - | Void |
boolean类型所占存储空间的大小没有明确指定,仅定义能够去字面值true或false。
在使用Java的基本类型是需要注意的是不能超过其所能表示的范围。
同样看个小栗子:
//测试整数类型:byte,short,int,long。以及进制之间的转换问题 public class TestDataType { public static void main(String[] args){ int a = 10; int a2 = 010; //八进制,/以0开头 int a3 = 0xf; //十六进制,以0x开头 // byte b = 200; // System.out.println(b); System.out.println(a); System.out.println(a2); System.out.println(a3); //各进制之间相互转换 System.out.println(Integer.toBinaryString(a)); //转换为二进制 System.out.println(Integer.toOctalString(a)); //转换为八进制 System.out.println(Integer.toHexString(a)); //转换为十六进制 int a5 = 10; long a6 = 200; byte b2 = 100; //如果数据的大小没有超过byte/short/char的表示范围,则可以自动转型。 long a7 = 11123213232L; long l = 3; long l2 = l+3; //L问题 } }
上面的例子中展示了部分基本类型的特性。特别需要提醒的是在是在使用long类型常量时可以在后面加“l”或”L”(建议使用大写,更易于区分),在定义变量名时要易于区分,最好做到望文生义。
Java提供了两个用于高精度计算的类:BigInteger和BigDecimal。
BigInteger支持任意精度的整数,在运算中,可以准确的表示任何大小的整数值而不会丢失任何信息。
BigDecimal支持任何精度的顶点数。
Java基础学习1-Java标识符及基本类型,布布扣,bubuko.com
原文:http://www.cnblogs.com/hyhl23/p/3879822.html