Java基础知识笔记第二章:基本数据类型与数组

标识符:

1:字母,数字,下划线,美元符号

2.不能以数字开头

3.标识符不能是:true false null(尽管true false null不是java的关键字)

4.标识符是区分大小写的

Unicode字符集:

  java语言使用Unicode标准字符集

关键字:

abstract

assert

boolean

break

byte

case

catch

char

class

const
continuedefaultdodoubleelse
enumextendsfinalfinallyfloat
forgotoifimplementsimport
instanceofintinterfacelongnative
newpackageprivateprotectedpublic
returnstrictfpshortstaticsuper
switchsynchronizedthisthrowthrows
transienttryvoidvolatilewhile

基本数据类型

八种基本数据类型:

boolean byte char int long float double

四大类型:

  逻辑类型:boolean

    常量:true false

    变量:使用关键字Boolean来声明逻辑变量,声明时也可以赋给初值

      boolean male=true,on=true,off=false,isTriangle;

  整数类型:byte short int long

    int 类型:范围(-2^31~2^31-1)

        常量:123,6000(十进制),077(八进制),Ox3ABC(十六进制)

        变量:使用关键字int来声明的变量;

          int a;int b=10;

    byte类型:范围(-2^7~2^7-1)

        变量:使用关键字byte来声明的变量;

          byte b=-12,tom=18,漂亮=98;(不要紧张没错java是使用Unicode编码所以可以使用汉字当做变量名,屌不屌)

    short类型:范围(-2^15~2^18-1)

        分配2个字节,占16位

        变量:short x=12,y=1234;

           强转:(short)-12;

    long类型:范围(-2^63~2^63-1)

        分配8个字节,占64位

        常量:long类型常量用后缀 L 来表示:例如 105L

        变量:使用long关键字来声明long变量:long a=20000L;

    注意:java没有无符号的byte,short,int,long。因此unsigned int m;是错误的声明;

  字符类型:char

        常量:‘A’,‘B’,'?','!','好‘,’\t'

        变量:使用char关键字来声明的变量:char ch='A',home='家',hansome='库'

          char ch1='\n',ch2='\"',ch3='\\';

          (int)'A':查看A在Unicode编码中的位置;(char)65:查看65代表地字符编码

        没有负数的char,范围0~65535

  浮点类型:float double

        float类型:

          常量:545.54445f,546465.154F,2e40f(2乘以10的40次方)

          变量:使用float声明的变量:float x=22.76f,tom=123.444f,weight=1e-12F;

          float在存储float型数据时保留8位有效数字;分配四个字节,占32位

        double类型:

          八个字节内存,占64位

          double x=125454234,y=0.4;

类型转换运算

byte short char int long float double 精度由低到高

1当把级别的变量的值付给级别的变量系统自动完成数据类型转换

    int x=20;

    float y;

    y=x;

2当把级别高的变量的值付给级别低的变量需要使用类型转换:格式:(类型名)要转换的值;

    int x=(int)34.89;

    long y=(long)55.544f;

输入输出数据

输入:

格式:

Scanner reader=new Scanner(System.in);

然后使用reader对象调用下列方法读取用户输入的值:

nextBoolean()
nextByte()
nextShort()
nextInt()
nextLong()
nextFloat()
nextDouble()

输出:

System.out.printf();//支持占位符
System.out.println();//自动换行

注意:使用system.out.println("some.....message");

不能出现回车:system.out.println("some...

..message");

这是无法通过编译的;

数组

数组的声明:

1:类型 数组名[ ] int array[ ];

2: 类型 [ ] 数组名; int[ ] array;

注意:java 不允许在数组声明中指定数组元素个数若声明:int a[10],int [10] a;这些都是错误的声明;只有在分配元素的时候在指定

为数组分配元素:

格式:

  数组名=new 数组类型[元素个数]

    1.int[ ] array;

     array=new int[10];

    2.int[ ] array=new int[10];

数组元素的使用:

        数组下标从0开始;array.length可以查看array数组的长度;

数组的初始化:

        数组创建后,系统会给数组的每一个元素一个默认值,如float型是0.0

        float boy[]={12.2f,450.1f,544.555f}

        相当于:float[ ] boy=new float[3];

数组的引用:

        int a[]={1,2,3},b[ ]={4,5};

        引用:b=a;

        

小结:

\u:代表Unicode字符编码,后面跟

符号字符含义
\n换行 (0x0a)
\r回车 (0x0d)
\f换页符(0x0c)
\b退格 (0x08)
\0空字符 (0x20)
\s字符串
\t制表符
\"双引号
\'单引号
\\反斜杠
\ddd八进制字符 (ddd)
\uxxxx16进制Unicode字符 (xxxx)