第二章 Java编程基础
JAVA 代码的基本格式:
修饰符 class 类名{
程序代码
}
2.1关键字:赋予了特殊含义的单词。
2.2标识符:在程序中定义的一些名称。
比如:类名
a-z 0-9 _ $
数字不可以开头,不可以使用关键字,一般首字母大写。
2.3注释:注解说明程序的文字。
作用:1、对程序进行说明。
2、调试程序。
注意:多行注释可嵌单行注释,但不能嵌套多行注释。
/*多行注释*/
/**文档注释*/
//单行注释
/*
需求:写一个hello world程序,将hello world字样显示屏幕上
思路:
- 找编译器
- 用Java语音,写个程序
- 这个程序需要运行,并具备显示的功能。
步骤:
- 定义一个类,通过class完成。
- 要让这个类运行,需要主方法。
- 显示功能可以通过输出语句实现。
代码:
测试。
*/
//1、用class定义类。
class Demo2
{
//2、类中定义主方法。
public static void main(String[] args)
{
//3、主方法中定义输出语句。
System.out.println(“hello world”);
}
}
2.4 常量与变量
常量表示不能改变的数值。
‘ a’只能包含一个字符;“差的”字符串
常见的转义字符:
1、\r 表示回车符,将光标定位到当前行的开头,不会跳到下一行。
2、\n 表示换行符,换到下一行的开头。
3、\t 表示制表符,将光标移到下一个制表符的位置,就像在文档中用tab键一样。
4、\b 表示退格符号,就像键盘上的Backspace键。
\‘ : 单引号
\‘‘ : 双引号
\\ : 反斜杠
变量概念:内存中的一个存储区域
该区域有自己的名称(变量名)和类型(数据类型)
该区域的数据可以在同一类型范围内不断变化
为什么要定义变量:用来不断的存放同一类型的常量,并可以重复使用
使用变量注意:变量的作用的范围(一对{}之间有效)
初始值
定义变量的格式:数据类型 变量名 = 初始值
注:格式是固定的,记住格式,以不变应万变。
JAVA语言是强类型语音,对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间
数据类型:
1、基本数据类型:
①数值型:整数类型(byte8位, short短16位 , int正常 32位 , long长64位)浮点类型(float 单精度, double双精度)
②字符型:(char)
③布尔型(boolean)
2、引用数据类型:①类(class)
②接口(interface)
③数组([])
JAVA中的运算符:①在进行自增++和自减- -的运算中,如果运算符++或- -放在操作数的前面时,则是先进行自增或自减运算,再进行其他运算。反之,如果运算符放在操作数的后面则是先进行其他运算再进行自增或自减运算。如:
int a = 1;
int b=2;
int x =a+b++;
System.out.println(”b=”+b);
System.out.println(“x=”+x);
运行步骤:1、x=a+b=1+2=3; 2、b=b++=2+1=3;
若将int x=a+b++改为int x = ++a+b,则运行步骤为:1、a=++a=1+1=2 ; 2、x = a+b=2+2=4.
②在进行除法运算时,当除数和被除数都为整数时,得到的结果也是一个整数。如果有小数参与时,得到的结果会是一个小数。
③在进行取模(%)运算时,运算结果的正负取决于被模数(%左边的数)的符号,与模数(%右边的数)的符号无关,如(-5)%3=-2,
5%(-2)=2。
表-赋值运算符
运算符 |
赋值 |
范例 |
结果 |
= |
赋值 |
a=3;b=2; |
a=3;b=2; |
+= |
加等于 |
a=3;b=2;a+=b; |
a=5;b=2; |
-= |
减等于 |
a=3;b=2;a-=b; |
a=1;b=2; |
*= |
乘等于 |
a=3;b=2;a*=b; |
a=6;b=2; |
/= |
除等于 |
a=3;b=2;a/=b; |
a=1;b=2; |
%= |
模等于 |
a=3;b=2;a%=b; |
a=1;b=2; |
备注:Java同时赋值写法
int x,y,z;
x=y=z=5;//为三个变量同时赋值。
错误写法:int x=y=z=5;
两种逻辑与(&&和&)的运算规则基本相同,两种逻辑或(||和|)的运算规则也基本相同。
&和|运算是把逻辑表达式全部计算完,而&&(短路与)和||(短路或)运算具有短路计算功能。
对于&来说,如果左侧条件为false,也会计算右侧条件的值,而对于&&来说,如果左侧的条件为false,则不计算右侧的条件,这种现象被称作短路现象。
所谓短路计算,是指系统从左至右进行逻辑表达式的计算,一旦出现计算结果已经确定的情况,则计算过程即被终止。
对于&&运算来说,只要运算符左端的值为false,则因无论运算符右端的值为true或为false,其最终结果都为false。
所以,系统一旦判断出&&运算符左端的值为false,则系统将终止其后的计算过程;
对于 || 运算来说,只要运算符左端的值为true,则因无论运算符右端的值为true或为false,其最终结果都为true。
所以,系统一旦判断出|| 运算符左端的值为true,则系统将终止其后的计算过程。
注:异或相同为false,相反则为true。
运算符^表示异或操作,当运算符两边的布尔值相同时(都为true或都为false),其结果为false。当两边布尔值不相同时,其结果为true。
位运算有何作用?
位运算示例
|
运算符
|
名称
|
示例
|
说明
|
&
|
位与
|
x&y
|
把x和y按位求与
|
|
|
位或
|
x|y
|
把x和y按位求或
|
~
|
位非
|
~x
|
把x按位求非
|
^
|
位异或
|
x^y
|
把x和y按位求异或
|
>>
|
右移
|
x>>y
|
把x的各位右移y位
|
<<
|
左移
|
x<<y
|
把x的各位左移y位
|
>>>
|
右移
|
x>>>y
|
把x的各位右移y位,左边填0
|
正数的符号位为0,负数的符号位为1。
将一个数左移"<<"会使该值乘以2的幂。
将一个数右移>>"会使该值除以2的幂。
右移(补零)运算符,即无符号右移,">>>"永远不会产生负号,因为其符号位总是被补零。 不论被移动数是正数还是负数,左边移进的部分一律补0。
JAVA中一种特殊的三元运算和if ……else语句相似,
其格式为:判断条件?表达式1:表达式2
如:
/*
int max; if (x > y){ max = x; }else { max = y ; }*/ //等同于以下一句。 int max=x>y ? x : y;
for(初始化表达式①;循环条件②;操作表达式④){
执行语句③
}
java 声明一个方法的具体语法格式如下:
修饰符 返回值类型 方法名([参数类型 参数名1 ,参数类型 参数名2 , …..]){
执行语句......
return 返回值;
}
若返回值类型是void时,return语句可省略。
方法的重载与返回值类型无关,它只需要满足两个条件,一个是方法名相同,二是参数个数或参数类型不相同。
方法的递归是指在一个方法的内部调用自身的过程,递归必须要有结束条件。
Java 定义一个数组格式:
int [ ] x = new int [100]; //声明一个int [ ]类型的变量,创建一个长度为100的数组。
数组长度可以“数组名.length”的方式来获得数组的长度,即元素的个数。
多维数组的表达方式:
- int [] [] arr = new int [3][4] ;
- int [] [] arr = new int [3][] ;
- int [] [] arr = {{1,2},{3,4,5,6},{7,8,9}};
continue 语句在循环语句中,它的作用是终止本次循环,执行下一次循环。
break 语句在循环语句中,作用是跳出循环语句,执行后面的代码,如果出现在循环嵌套中时,只跳出内循环,想要跳出外循环时,需对外循环做标记。