`

黑马程序员Java培训和Android培训Java 二编程基础

 
阅读更多
黑马程序员
Java编程基础
Java的基本语法(1)
java代码的位置位于类中,用关键字class表示。
java是严格区分大小写的 
java是一种自由格式的语言
代码分为结构定义语句和功能执行语句
功能执行语句的最后必须用分号结束 
java程序有三种注释方式 //注释单行代码(可以嵌套在/*...*/中);/*code...*/注释夹在中间的代码(这种格式的注释是不可以嵌套的);/**code...*/也可以注释多行,是专门生成java注释文档的格式。

Java的基本语法(2)

java中的标识符
java中的包、类、方法、参数和变量的名字,可由任意顺序的大小写字母、数字、下划线(_)和美元符号($)组成,但标识符不能以数字开头,不能是关键字

java的关键字:abstract do implement private this boolean double import protected throw break else instanceof  public throws byte extend int return transient case false interface short true catch final long static try char fianlly native strictfp void class float new super volatile continue for null switch while default if  package synchronized

java中的常量(1)
整型常量
十进制(12) ,十六进制 (0x12),八进制(012)
长整型常量
13L
单精度浮点数
5.1f,.4f ,2e3f ,0f
双精度浮点数
5.1,.4,2e-3,0d
布尔常量
true和false

java中的常量(2)
字符常量
‘a’ , ‘8’,  '\u0027'
‘\r‘表示接受键盘输入,相当于按下了回车键;
‘\n‘是换行;
‘\t‘是制表符,相当于table键;
‘\b‘是退格键,相当于Back Space;
‘\‘‘是单引号,而‘\“‘是双引号;
‘\\‘是一个斜杠“\”。
字符串常量
“Hello World“,”123”, "Welcome \nXXX"
null常量
null常量只有一个值,用null表示,表示对象的引用为空


变量的概念与作用
变量就是系统为程序分配的一块内存单元,用来存储各种类型的数据。根据所存储的数据类型的不同,有各种不同类型的变量。变量名代表这块内存中的数据 。
int x=0,y;
    y=x+3;
执行这两条语句的过程中,内存分配及变化情况。X在被取值前必须被初始化。

java的变量类型 
数据类型包括基本数据类型和引用数据类型:基本数据类型又包括数值型(整数类型(byte short int long)浮点型(double float)),字符型,布尔型;引用类型包括类,接口,数组。


变量字节大小及有效取值范围
byte占用一个字节,数字大小为-2^7—2^7 -1
short占用两个字节,数字大小为-2^15—215 -1
int占用四个字节,数字大小为-2^31—231 -1
long占用八个字节,数字大小为-2^63—263 -1
float占用四个字节,数字大小为1.4E^-45~3.4E+38 , -1.4E^-45~-3.4E+38 。用二进制的指数形式表示一个浮点数的格式,如:101*22  , 101*2-3
double占用八个字节,数字大小为4.9E-324~1.7E+308, -4.9E-324~-1.7E+308 。
char占两个字节,数字大小为0—2^16 -1,是unicode编码。字符的本来面目,我们为什么可以直接将一个数字赋给字符变量。Boolean占一个字节,其取值只有两个,true和false。
用''括住字符然后赋给char型变量,实质是将该字符所对应的在Unicode码中对应的数字赋给char变量。

类型转化
自动类型转换(也叫隐式类型转换) 
强制类型转换(也叫显式类型转换)
类型转换的原理及什么时候要用强制类型转换
表达式的数据类型自动提升
所有的byte型、short型和char的值将被提升到int型。
如果一个操作数是long型,计算结果就是long型;
如果一个操作数是float型,计算结果就是float型;
分析 System.out.println(‘a’+1)//自动转换成整数类型与 
System.out.println(“”+’a’+1)//自动转换成String类型
这就是区别。

一般不能将低精度的赋值给高精度的变量。如果要赋值那么在右边赋的值前面加小括号,小括号中写入左边变量的类型,这种方法叫做强制类型转换。当然是有风险的,可能会发生数值丢失(当高精度类型的变量值超过了低精度变量的最大限度的时候)。如果一个操作数是double型,计算结果就是double型。


变量的生命周期与作用域
变量要先定义,后使用,但也不是在变量定义后的语句一直都能使用前面定义的变量。我们可以用大括号将多个语句包起来形成一个复合语句,变量只能在定义它的复合语句中使用。


函数
函数(子程序)的概念与作用。
定义一个函数的格式
编写打印三个矩形的程序(用流水帐的方式与用函数的方式进行对比分析)。
返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,….)

  程序代码
  return 返回值;

其中:
形式参数:在方法被调用时用于接收外部传入的数据的变量。
参数类型:就是该形式参数的数据类型。
返回值:方法在执行完毕后返还给调用它的程序的数据。
返回值类型:函数要返回的结果的数据类型。
实参:调用函数时实际传给函数形式参数的数据。
如何理解函数返回值类型为void的情况:由于函数的定义如此必须有个返回值的的位置,可以不返回任何类型的值,但是得有这个形式。在无返回值的函数中,编译器会自动在程序的末尾添加return语句;如果在函数的某一处添加return语句,则函数执行到这里就返回了。


if...else...语句的使用:如果要在if语句后面执行多条语句,那么这些语句应该被大括号括住;else同理。
if..else...可以嵌套使用。

switch语句的执行顺序是跳转到符合判断的case语句后依次执行代码,直到遇到break。

continue语句只能出现在循环语句(while,do,for)的子语句块中,无标号的continue语句的作用是跳过当前循环的剩余语句块,接着执行下一次循环。


break语句可以中止循环中的子语句和switch语句。一个无标号的break语句会把控制传给当前(最内)循环(while,do.for或Switch)的下一条语句。如果有标号,控制会被传递给当前方法中的带有这一标号的语句。


移位运算的注意事项及小技巧
移位运算符适用类型有byte、short、char、int、long
对低于int型的操作数将先自动转换为int型再移位。
对于int型整数移位a>>b,系统先将b对32取模,得到的结果才是真正移位的位数。例如:a>>33和a>>1结果是一样的,a>>32的结果还是a原来的数字。
对于long型整数移位时a>>b ,则是先将移位位数b对64取模。
移位不会改变变量本身的值。如a>>1;在一行语句中单独存在,毫无意义 。
x>>1的结果和x/2的结果是一样的,x<<2和x*4的结果也是一样的。总之,一个数左移n位,就是等于这个数乘以2的n次方,一个数右移n位,就是等于这个数除以2的n次方。请思考:如何用程序实现求2的x次方。答案:y = 1<< x;



Java空间被分为两部分,一部分叫做栈内存,一部分叫做堆内存

使用数组时应该注意的问题:
空指针异常
如何得到数组长度 从零开始计数
数组越界异常



与数组操作相关的函数
使用System.arraycopy()函数拷贝数组
用Arrays.sort 来排序数组


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics