`
253317239
  • 浏览: 6852 次
  • 性别: Icon_minigender_1
  • 来自: 鄂尔多斯
文章分类
社区版块
存档分类
最新评论

JAVA学习笔记(二)标识符和数组

阅读更多
标识符 关键字及数据类型
1.标识符: 用来表示类名,变量名,方法名,类型名,数组名,文件名的有效字符序列.
   特点:
   java语言规定标识符由字母,下划线,美元符号和数字组成,并且第一个字符不能是数字字符.
   java语言使用unicode标准字符集其包含65536个字符,比C和C++所使用的ASCII码多很多.
2.关键字:编程语言中已经被赋予特定意义的一些单词,不能把这类词作为名字来用,具体的关键字书上列举了很多,略.

3.数据类型
逻辑类型: boolean 用ture(真)和false(假)来赋值,没有赋值默认情况时表示false
整数类型:
(1) int型变量,内存分配4个字节的空间,即32位的空间,所以可以表示-2^31到2^31-1的整数,例如int x=10;
(2) byte型变量,内存分配1个字节的空间,范围从-2^7到2^7-1,例如byte x=127
(3) short型变量,内存分配2个字节的空间,范围从-2^15到2^15-1,例如short x=1000
(4) long型变量,内存分配8个字节的空间,范围从-2^63到2^63-1,例如long x=700000;

字符类型:
(1)常量:java使用unicode字符集,所以字符表中的每个字符都是一个字符常量,用单引号括上,例如'A','你','あ'
注意有些字符不能通过键盘直接输入到字符串中或程序中,这时就需要转意字符常量,例如:'\n'(换行),'\b'(退格),'\''(单引号)等等.
(2)变量:通过关键字char来定义字符变量
   char型变量,内存分配2个字节的空间,因为是字符不存在负数的概念,所以范围从0到2^16-1(即65535),例如char name='刘',grade='A'
如果要查一个字符在unicode字符集里的顺序位置,必须使用int类型转换,如(int)'A',但不可以用short型转换(范围只有一半);同样道理如果想得到一个在0到65535之间的数字在unicode字符集中所对应的字符必须使用char型转换,如(char)30000.具体含义理解如下面代码

[Copy to clipboard]CODE:public class   Sign_Num
{    public static void main (String args[ ])
{ char chinaWord='你',japanWord='ぁ';
       int   p1=36328,p2=38358;
       System.out.println("汉字\'你\'在unicode表中的顺序位置:"+(int)chinaWord);
       System.out.println("日语\'ぁ\'在unicode表中的顺序位置:"+(int)japanWord);
       System.out.println("unicode表中第20328位置上的字符是:"+(char)p1);
       System.out.println("unicode表中第12358位置上的字符是:"+(char)p2);
     }
}
除了char以外还要稍微介绍一下string,在C或C++中,String是一个以空为终结的字符数组,而在java中它是java.lang包中的String类来创建一个字符串变量,因此字符串变量是一个对象.String的具体介绍在后面会学习到.

浮点类型:
(1)float型 内存分配4个字节,占32位,范围从10^-38到10^38 和 -10^38到-10^-38
例float x=123.456f,y=2e20f; 注意float型定义的数据末尾必须由"f",为了和double区别
(2)double型 内存分配8个字节,范围从10^-308到10^308 和 -10^-308到-10^-308
例double x=1234567.98,y=8980.09d; 末尾可以有"d"也可以不写

基本数据类型转换:
类型按精度从低到高:byte short int long float double
(1)当把级别低的变量赋值给级别高的变量时,系统自动完成数据类型的转换,例
     int x=100;
     float y;
     y=x;
    结果y的值应该是100.0
(2)当把级别高的变量赋值给级别低的变量时,必须使用显示类型转换运算,格式为类型名)要转换的值;例
     int x=(int)23.89f;
    结果x的值为23
    所以强制转换运算可能导致精度的损失
(3)当把一个整数赋值给一个byte,short,int或long型变量时,不可以超出这些变量的取值范围,否则必须进行类型转换运算,例
     byte a=(byte)128;
     byte b=(byte)-129;//超出范围
     结果a值为128,b值为127
用下面的代码来复习下:

[Copy to clipboard]CODE:public class Example2_2
{   public static void main (String args[ ])
{   int c=2200;  
long d=8000;
       float f;
       double g=123456789.123456789;
       c=(int)d;
       f=(float)g;    //导致精度的损失
    System.out.print("c=   "+c);  
System.out.println("   d=   "+d);
       System.out.println("f=   "+f);
System.out.println("g=   "+g);
     }
}
java数组
格式: 数组元素类型 数组名字[]   或
       数组元素类型 []数组名字   例
float boy[];
创建数组:   数组名字=new 数组元素的类型[数组元素的个数]; 例
boy=new float[2];//意思是boy获得了两个用来存放float型数据的空间
注意:和C和C++不同的是java允许使用int型变量来指定数组大小,例
int size=30;
double number=new double[size];
程序代码复习数组:

[Copy to clipboard]CODE:public class Example2_3
{ public static void main(String args[])
{    int a[]={100,200,300};
       int b[]={10,11,12,13,14,15,16};
       b=a;
       b[0]=123456;
       System.out.println("数组a:"+a[0]+","+a[1]+","+a[2]);
       System.out.println("数组b:"+b[0]+","+b[1]+","+b[2]);
       System.out.println("数组b的长度:"+b.length);
    }
}   
0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics