您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 企业财务 > java基础学习笔记
Java编程基础Java的语言格式:修饰符class类名{程序代码}java的程序语句必须要以英文的分号(;)来结束,但大括号除外。分号,总是放在语句的结尾处。Java程序的注释注释的作用:仅仅是为了说明程序代码的意思,为了给未来的自己或别人看的。注释的内容只是为了阅读程序方便,根本不执行。两种;单行注释//注释内容多行注释/*注释内容*/注释放在语句的结束部分后面。Java中的标识符类的名称可以由任意顺序的大小写字母,数字,下划线(_)和美元符号($)组成。不能以数字开头标识符的其中一个问题,关键字关键字指的是在JAVA语言中有特殊意义的词,不能做为名称来使用。Java中的常量程序里面持续不变的值,或者说是产生后不能改变的数据。包括:整数类型常量,浮点类型常量,布尔类型常量12,26.58,true(真)/false(假)布尔类型用来进行逻辑运算的,例如:我是中国人,运算的结果是true。整数类型常量中有一个类型叫长整型:即很长的整数类型,表示方法特别。即数字后面加上字母L。例300000000000000000L,指的就是一个长整数类型。300L浮点类型说白了就是小数,小数点后面的位数是有讲究的。浮点类型分为两种,一是单精度浮点类型,二是双精度浮点类型单精度类型在值的后面必须要加上F。例如:2.68f(F指的是英文FLOAT。单精度的意思)双精度类型在值的后面必须要加上D。例如:2.68D(D指的是英文DOUBLE。双精度意思)如果一个小数,后面什么也没加。如。2.68,那么,这个小数默认为双精度类型。字符串常量和字符常量字符串常量是以一组双引号(“”)包含的值,例如:“hello”字符常量是以一组单引号(‘’)包含的值例如:‘b’变量及变量的作用域在程序运行时,系统会为程序分配内存空间,用来存储各种类型的数据,分配的内存空间要用一个标记符来标识,内存中的数据是可以改变的,所以叫变量。定义变量的标记符就叫变量名,而在内存中所加载的数据就是变量值。用一个变量定义一块内存空间以后,我们就可以用变量名来代表这块内存中的数据了,又因为内存中所存储的数据类型不同,所以又产生了各种不同类型的变量。intm=8,n;变量类型变量名=变量值;n=m*2;两个内存空间(几个变量名就是分配了几个内存空间),用来存储整数,格式见上面。定义变量的简单形式:变量类型变量名;例如:intx;整数类型(byte,short,int,long)数值型浮点类型(float,double)基本数据类型字符型(char)布尔型(boolean)整数类型的取值范围:byte8位一个字节short16位二个字节int32位四个字节long64位八个字节浮点类型取值范围:float32位四个字节double64位八个字节*只有数值型才有取值范围。类型的自动转换二个条件,一,两种类型兼容,都是数字类型才可以,布尔和字符类型都不可以二,原来的类型一定要小于换转后的类型。如:byte向int转换,反之,如:long向short类型的转换就不是自动转换了,而是强制类型转换。强制类型转换指的是将大的数据类型向小的数据类型的转换。公式:目标类型变量=(目标类型)值即:小类型变量名=(小类型)大类型的值bytea;intc;a=(byte)c;表达式数据类型的自动提升所谓的表达式就是加减乘除等运算式。一.所有byte型,short型,的值将被提升到int型二.如果运算式中其中一个操作数是long型,计算结果就是long型三.如果运算式中其中一个操作数是float型,计算结果就是float型四.如果运算式中其中一个操作数是double型,计算结果就是double型变量的作用域一对大括号中间的部分就是一个代码块,代码块就决定了其中定义的变量的作用域。作用域决定了变量的“是否可见”及“生存范围”。局部变量在一个代码块内定义的变量称之为局部变量,局部变量在代码块被执行时创建,代码块结束时被销毁,*局部变量在进行取值操作前必须被初始化或进行过赋值操作,否则编译错误。例:intx;x=x+1;System.out.println(x);Java中的运算符算术运算符运算符运算意思例如产生的结果+正号+33-负号b=4;-b-4+加9+918-减9-45*乘5*840/除12/34%取余(取模)5%50++自增(前)a先自动加一,然后再把值赋给ba=2;b=++a;a=3;b=3;++自增(后)a=2;b=a++a=3;b=2;--自减(前)a=5;b=--a;A=4;b=4;--自减(后)a=5;b=a--;a=4;b=5;+字符串相连接“he”+”llo”“hello”赋值运算符赋值运算符是将一个值赋给一个变量,最常见的赋值运算符是“=”赋值运算符运算符运算符的意思例如运算的结果=赋值A=3;b=2A=3;b=2+=加等于A=3;b=2;a+=b(a=a+b)A=5;b=2;-=减等于A=3;b=2;a-=bA=1;b=2;*=乘等于A=3;b=2;a*=bA=6;b=2;/=除等于A=3;b=2;a/=bA=1;b=2;%=余等于(模等于)A=3;b=2;a%=bA=1;b=2;逻辑运算符逻辑运算符用于对boolean型结果的表达式进行运算,运算结果都是boolean类型,即只有两个结果,true和false.逻辑运算符运算符运算的意思例如运算的结果&And(与)False&truefalse|Or(或者)False|truetrue^Xor(异或)True^falsetrue异或,只有当^连接的两个布尔表达式的值不相同时,才返回true值如果两个都是true或都是false,结果将返回false值!Not(非,不是)!truefalse&&And(短路和)False&&truefalse||Or(短路或)False||truetrue==比较是否等于X=3;x==3true程序的流程控制流程控制有三种结构:1顺序结构2选择结构3循环结构if条件语句第一种格式:if(条件语句){执行语句块}第二种格式:if(条件语句){执行语句块1}else{执行语句块2}对于if…else格式,还有一种写法。变量=布尔表达式?语句1:语句2;y=3;x=5;第三种格式:if(条件语句1){执行语句块1}elseif(条件语句2){执行语句块2}….elseif(条件语句n){执行语句块n}else{执行语句块n+1}if语句的嵌套,就是if语句里面还有if语句。Switch选择语句Switch(表达式){Case取值1:语句块1break;………….Case取值n:语句块nbreak;If语句小括号里面的内容必须是布尔表达式,只有当小括号里面的内容为true的时候,才会执行后面大括号里的语句块,小括号后面的大括号就是一个作用域。Else后面一定不能有条件语句。只能是前面有if字样,才可能有条件语句表达式中的值一般为数字或变量,switch语句只有一组大括号Break表示终止程序运行。default:语句块n+1break;}while循环语句while(条件表达式语句){执行语句}所谓的“死循环”,就是在while后面的小括号内的条件永远满足,将会永远循环下去。While表达式的括号后一定不要加“;”错误如下:Intx=3;While(x==3);System.out.println(“x==3”);Dowhile语句和while语句功能上差不多,它在执行完第一次循环后才判断条件表达式的值是否为真,如果为真,那么继续循环,否则,就退出循环。do{执行语句}while(条件表达式语句);for循环基本格式:for(初始化表达式;循环条件表达式;循环后的操作表达式){执行语句}小括号内的条件表达式语句一定是布尔类型,即,只有两个值,true或false循环是走到大括号结束后又回到大括号开始,并每次循环都判断小括号内容是否为真,如果为真,就会再进入大括号内执行语句,只有小括号内的条件不满足时,才退出循环。这个分号导致程序进入无限循环,不会报错For(intI=1;I=limit;I++){Sum=sum+I;}Continue语句Continue语句只能出现在循环语句(while,do,for)的子语句块中,continue语句的作用是跳过当前循环的剩余语句块,接着执行下一次循环。Break语句在使用循环语句的时候,只有循环条件表达式的值为假的时候才能结束循环,有的时候,如果想提前中断循环,就得向循环语句块内添加break语句。BreakoutsideswitchorloopBreak语句只能放在SWITCH或循环里面,不能放在外面,否则不执行。数组为什么要学数组?由一个问题所引起的:假如要定义100个整型的变量,应该怎么做呢?Intx1;Intx2;----intx100;如果一下子定义很多个同样类型的变量,大到一定程度就会到无法完成的情况下,有一个办法。即数组。数组的一个重要的条件:必须是同样类型的变量。一进入循环便执行这条语句,通常为循环计数器设置初始值,同时,还定义循环计数器这个变量必须是布尔表达式,其值为true或false,循环每次都要检测这个表达式,只要其值为true,便重复执行循环。此语句在结束每次循环时执行,它通常为循环计数器I值递增1。这是循环语句,也可以是多个语句所组成的语句块。当I++不符合条件时,就退出循环,下次再进入时,计数器I又从头开始计数。以下是定义数组的内容:如果一次定义100个int型的变量。intx[]=newint[100];x[]指的是数组的名称变量的名称分别是x[0],x[1],…..x[99].重点:第一个变量名称是x[0],最后一个变量名称是x[99]。这种定义变量的方式就是数组。其中x[3]中括号内的数字3就是数组的下标,下标永远都是从0开始的。如果想从一个数组中求出所有的元素,可以用for循环来做。在java中,还可以用下面方式定义数组:int[]x;x=newint[100];这两种定义数组的方式是完全一样的,只是习惯不同而已。数组的静态初始化在定义数组的同时就为数组中每个元素分配内存空间并赋值,就是数组的静态初始化。inta[]={1,2,3,4};等号右边就是产生一个数组,这个数组有4个元素,这4个变量的取值分别是1,2,3,4,数组的长度等于右边{}中的元素个数。注意:声明数组时,不管怎么定义数组,都不能指定其长度,比如错误如下:inta[5];正确如下:inta[]a=newint[5];数组的长度可以用一种特殊的写法来求出来。数组名.length使用数组的常见问题1.必须对数组引用变量赋于一个有效的数组对象(通过new产生的或用{}静态初始化变量类型固定关键字要定义的数组个数数组名不能加中括号[]。产生的)后,才可以引用数组中的每个元素。PublicclassTestArray{Publicstaticvoidmain(Stringargs[]){Inta[]=nulla[0]=1;//此时,a[0]不可以赋值,因为数组a[]没有初始化。}}2.数组越界异常(ArrayIndexOutOfBoundsException).超过了数组的长度。二维数组定义的格式如下:intx[][]=newint[2][3];例:int[][]xx={{3,2,7},{1,5},{6}};intxx[][]注意:与一维数组一样,在声明多维数组时不能指定其长度,比如错误如下:intxx[3][2]=={{3,2},{3,5},{6,7}}//编译出错,函数通过距形,程序中每一段打印距形的代码,除了高和宽不一样外,其它地方都一样,这时,就可以把打印出矩形的代码作为子程序单独从程序中提出来,并用一个“名称”来标记这段代码,以后再碰到要打印矩形时,直接调用这个“名称”就可以了,我们对打印矩形的程序代码只写一遍,而不用重复写很多次。函数的定义必须有三部分组成,格式如下:返回值类型函数名(参数类型形式参数1,参数类型形式参数2,…….){程序代码行列3162
本文标题:java基础学习笔记
链接地址:https://www.777doc.com/doc-4358993 .html