黑马程序员--【学习日记二】——java的基本结构

时间:2022-08-16 00:26:47
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
  • 知识列表

    •  world程序
    • 数据类型
    • 变量
    • 运算符
    • 字符串
    • 数组
    1)hello world程序
    这个程序虽然简单,但所有的java程序都具有这种结构,并能很好的说明java程序的书写规则:
    首先,java对大小写敏感,如果出现了大小写拼写错误,例如,将main写成Main,程序将无法运行。
    其次,类名必须以字母开头,并大写,由多个单词组成时,每个单词的首字母大写,其余字母小写,即
    驼峰命名法。源代码的文件名必须与公共类的名字相同。
    2)数据类型
    java是强类型语言。必须为每一个变量声明一种类型,java中一共有8中基本数据类型,4种整型(byte,short,int,long),2中浮点型(double,float),1种字符类型char,一种表示真假的boolean型。
    2.1)整型
    类型  存储大小  取值范围
     int  4字节  -2,147,483,648 ~~~ 2,147,483,647
     short  2字节  -32768 ~~~ 32767
     long  8字节  -9,223,372,036,854,775,808~~~9,223,372,036,854,775,807
     byte  1字节  - 128~~~ 127
    通常情况下,int最为常用。如果要表示超过20亿的数字,就需要用long类型。
    在java中,整型的范围与运行java代码的机器无关,这增强了java程序的可移植性。
    长整型数值有个后缀L。十六进制数值有一个前缀0x,八进制有个前缀0,例如二进制010对应八进制中的8,所有八进制比较容易混淆,一般不使用八进制常数。
    java7的新特性中,加上前缀0b就可以写二进制数,例如,0b0101就是5;加上下划线以便于阅读,例如:100_000_000就是一亿,二进制数也可以这么表示,例如0b1001_0010_1010_0001。
    2.2)浮点型
     类型  储存空间  有效位数
     float  4字节  6~7位
     double  8字节  15位
    float成为单精度,double精度是float的两倍,称为双精度,float有后缀F,double有后缀D。
    注意:当禁止出现舍入误差时,读点类型就不使用了。例如System.out.println(2.0-1.1),理论上应该输出0.9,但输出结果为0.899999999999999999,主要是因为浮点类型采用二进制表示,而二进制是无法精确表示分数1/10的,就像十进制无法精确表示分数1/3一样。
    2.3)char类型
    char类型用于表示单个字符,如'a'、'b'、'c'、‘A’、‘B’、‘C’等。
    转义字符:\b表示退格,\t是制表符
    2.4)boolean型:
    false和true,用于逻辑判断。
    3)变量
    3.1)声明变量时,变量所属的类型位于变量名之前,变量名不能是java保留字,变量名
    3.2)变量初始化,声明一个变量之后必须对变量进行显示初始化,不要使用未被初始化的变量,例如
    int x;
    System.out.println(x);
    这种语句就是错误的,无法通过编译。
    变量赋值时的写法比较灵活:
    int x;
    x=2;
    或者:
    int x = 2;
    常量:
    java中常量用关键字final标示。也就是说用final标示的变量是一个常量,只能被赋值一次,以后不能再更改,并且final修饰的常量名称字母全部大写,多个单词之间用下划线隔开。如果常量被用public修饰,那么其它类的方法也可以使用该常量。
    例如:public static double CIRCLE_PI = 3.14;
    4)运算符
    加减乘除:+ - * /  ,%称为取模。
    x=x+4;等价于  x+=4;两者之间存在细微差别,前者是两次运算,先加法后赋值,后者只有一次赋值运算。
    注意:如果整数被0除就会产生一个异常ArithmeticException,而浮点数被0除就会得到无穷大Infinity。
    自增运算:int x = 1;x++;每运算一次x的值就增加1;x--则相反,每运算一次就减少1;
    关系运算符:==;!=;>;<;>=;<=;&&,||
    位运算符:&(与),|(或),^(异或),~(非)
    >>和<<称为右移和左移,>>>也是右移,与>>不同的是移动后最高位用0补,没有<<<。
    类型转化
    黑马程序员--【学习日记二】——java的基本结构
     (图片摘自网络)
    强制类型转换:例如double x = 1.2;  int  y = (int) x;
    5)字符串
    每个用双引号""括起来的字符串都是String 类的一个实例。
    通过equals判断两个字符串是否相等。
    注意:String类没有提供修改字符串的方法。java中String类称为不可变的字符串,因为正常情况下很少需要修改字符串,大多情况都是在对字符串进行比较,也就是说字符串一旦被建立,就不会改变,当不再使用某个字符串时,java将启动垃圾回收释放内存,避免造成内存泄漏。
    注意:空串“”和null的区别,空串“”是一个长度为0的、内容为空的java对象,而null表示没有任何对象与之关联。
    6)数组:
    数组是一种存储同意类型数值的集合。
    数组元素的默认初始化都为0,boolean类型数组的元素默认初始化值为false,对象数组的元素默认初始化值为null。
    数组常见操作方法:冒泡排序,选择排序,折半查找等
    二维数组:也成为矩阵。
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------