jo太郎

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

一、标识符与关键字

标识符是用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列。Java语言规定的标识符有以下几点要求:

  • 标识符由字母、下划线、美元符号和数字组成,长度不受限制。
  • 标识符的第一个字符不能是数字字符。

  • 标识符不能是关键字。
  • 标识符不能是true、false和null(尽管true、false和null不是关键字)。

 上面提到了标识符不能是关键字,这是因为关键字就是具有特定用途或被赋予特定意义的一些单词。Java的关键字都是小写的。遇到大写肯定不是关键字。下面是一些常见的关键词:

 

 

 

 二、基本数据类型

Java的基本数据类型有八种,它们各自所占字节和取值范围如下:

 

 其中需要特别注意的是,long变量必须有后缀L,float变量必须有后缀F或f。

 Java数据类型(不包括逻辑类型)按精度从低到高分别为:byte  short  char  int  long  float  double,这也决定了类型转换的规则:

  • 当把级别低的变量的值赋给级别高的变量时,系统自动完成数据类型的转换。
  • 当把级别高的变量的值赋给级别低的变量时,必须使用显示类型转换运算。显示转换的格式:(类型名)要转换的值;例如:int x=(int)35.55。

三、数组

1、数组的声明

1 //一维数组的声明
2 float a[];
3 char []b;
4 //二维数组的声明
5 float a[][];
6 char [][]b;

注意,因为Java声明数组时,括号可以在前面所以int []a,b[]其实是声明了一维数组a和二维数组b。

2、数组的初始化

Java数组是静态的,必须初始化后才能使用,一但初始化指定长度后,这个长度就不能变了。常见的方法有:

 1 //静态初始化,给定初始值,由系统决定长度
 2 int []a={1,2,3}; 
 3 
 4 //同上
 5 int []b=new int[]{1,2,3};
 6 
 7 //动态初始化,指定数组长度,在给定初始值
 8 int []a=new int[100];
 9 for(int i=0;i<a.length;i++){
10 a[i]=i;
11 }

关于数组的长度,我们可以使用length来获取,

  • 对于一维数组,“数组名.length”的值就是数组中元素的个数
  • 对于二维数组,“数组名.length”的值是它含有的一维数组的个数

3、数组的引用

我们知道内存地址通常都很长,因为不容易记住,所以就给这些地址取个名称,这就是引用变量,这些引用变量存储在一块名叫 “栈内存” 的区域,所以“引用”,就是Java对象在堆内存的地址赋给了“栈内存”的变量。而Java数组就是引用型变量,因此两个相同类型的数组如果具有相同的引用,它们就有完全相同的元素。

 1 class example
 2 {
 3     public static void main(String args[])
 4     {
 5         int []a={1,2,3,4};
 6         int []b={100,200,300};
 7         System.out.println("数组a的元素个数="+a.length);
 8         System.out.println("数组b的元素个数="+b.length);
 9         System.out.println("数组a的引用="+a);
10         System.out.println("数组b的引用="+b);
11         a=b;
12         System.out.println("数组a的元素个数="+a.length);
13         System.out.println("数组b的元素个数="+b.length);
14         System.out.println("数组a的引用="+a);
15         System.out.println("数组b的引用="+b);
16         System.out.println("a[0]="+a[0]+",a[1]="+a[1]+",a[2]="+a[2]);
17         System.out.println("b[0]="+b[0]+",b[1]="+b[1]+",b[2]="+b[2]);
18     }
19 }

 

posted on 2020-04-01 17:05  浪客行翰  阅读(879)  评论(0编辑  收藏  举报