1,Java的基本语法
Java中的程序代码可分为,结构定义语句,和功能执行语句,其中,结构定义语句用于声明一个类或方法,功能执行语句用于实现具体功能,每条功能执行语句的最后都必须以分号结尾。
System.out.println("这就是第一个Java程序!");
java程序中一句连续的字符串不能分开在两行中书写,想将一个太长的字符串分成两行中书写,可以先将这个字符串分成两个字符串,然后用(+)将这两个字符串起来在(+)处断行。
ava中的三种注释类型,分别为单行注释,多行注释和文档注释。
单行注释通常用于对程序中的某一行代码进行解释,用符号”//“表示”//“后面为被注释的类容。
多行注释,顾名思义就是在注释中的类容可以为多行,它以符号‘*/’表示开头,以符号‘*/’结尾
文档注释,以符号/**‘开头,并在注释类容末尾以’*/‘结尾。
Java中的标识符。
在编程过程中,经常需要在程序中定文一些符号来标记一些名称,
如,包名、类名、方法名、参数名、变量名等。这些符号被称为
标识符,
→标识符可以由任意顺序的大小写字母、数字、下划线()和美元
符号(S》组成,但不能以数字开头,不能是ava中的关键字。
Java中的关键字。
Java的变量和常量。
1:在程序执行过程中,其值不能被改变的量,成为常量,其值能被改变的量称之为变量。变量与常量的命名必须使用合法的标识符。
2:Java语言规定标识符有任意顺序的字母、下划线(_)、美元符号($)和数字组成,并且第一个字符不能是数字。标识符不能是Java中的关键字。要避开关键字。
3:关键字:关键字又称保留字,是Java语言中已经被赋予特定意义的一些单词,不可以把这些单词作为标识符来使用,例如int,Boolean,break。
4:声明变量:告诉编译器这个变量的数据类型,这样编译器才知道需要多少配置多少空间给它,以及它能存放什么样的数据。在程序运行过程中,空间内的值是变化的,这个内存空间就称为变量。变量的命名必须是合法的标识符。内存空间内的值就是变量值。在声明变量时可以是没有赋值,也可以是直接赋给初值。例如:
int age;(声明int型变量)
char char1=‘r';(声明char型变量并赋值)
5:声明常量:在程运行过程中一直不会改变的量称为常量,通常也被称为final变量。
先定义成员变量times,然后再定义一个局部变量times,最后将times的值输出,最后得出结果为4。
自增和自减运算符
自增、自减运算符的作用是使用变量的值增1或者减1。放在草做元前面的自增、自减运算符,会将变量的值加1或者减1,然后再使用该变量参与表达式的运算。放在操作元后的自增、自减运算符,会使用参与表达式的运算,然后再将该变量加1(减1).
例如:
++a(--a) //表示相似使用变量先使a的值加(减)1
a++(a--) //表示再使用a之后,使a的值加(减)1
”++a“与"a++"的作用都详单与a=a+1。 假设a=4 则
b=++a; //先将a的值加1,然后赋给b,此时a值为5,b为5
另一个假设a=4 则:
b=a++; //先将a的值赋给b。再将 a的值变为5,此时a值为5,b值为4
逻辑运算:
&&与,||或 ,!非。~取反,^异或
&&两者都为真,结果才是真。
||只要一者为真,结果就是真。
!非真为假,非假为真。
&两者都为1,结果为1
|只要有一者为1,结果为1
~0变1,1变0
^两者相同为0,不同为1
移位操作:
除了上述运算符,还可以对数据按二进制位进行移位操作。java中的移位运算符又以下3种:
<<:左移。 空位补零,溢出去掉
>>:右移。 正数补零,负数补一,溢出去掉
>>>:无符号右移。 整体右移,空位补零,溢出去掉。
三元运算符;
三元运算符的使用格式为:
条件式 ? 值1 : 值2;
三元运算符的运算规则为:若条件式的值为true,则整个表达式取“值1”,否则取“值2”例如:
boolean b =20<45 ? true : false;
上述程序表达式“20 <45”的运算结果返回真,那么 bolean 型变量b 取值为true。相反,如果表达式的运算结果返回为假,则 boolean 型变量 b 取值为 false。
三元运算符等价于 if...else 语句,例如上述代码等价于:
boolean a; //声明 boolean 型变量
if(20<45) //将 20<45作为判断条件
a = true, //条件成立,将true 赋值给 a
else
a = false; //条件不成立,将 false 赋值给 a
流程控制各分支语言:
分支结构;
主要有四种:if结构、if...else结构、if...else if结构、switch…case结构。
if结构:满足条件时执行语句,不满足则不执行。
if...else结构:满足条件执行语句,不满足则执行另外的语句。
if...else if结构:多个条件,满足不同条件执行不同语句。
switch…case结构:一种特殊的分支结构,只能用于判断整数,需要配合break使用
2,循环结构;while(条件){
2
}
3
1,1->条件为真->2->....条件为真->2->条件为假->3
do....while循环;
1 do{2}while(条件)3, 1->2->条件为真->2条件为真->....->2条件为假->3
for循环;
3;for(2;3;4){
5
}
6
1->2->3T->5->4->.....->3T->5->4->3F->6
while嵌套do....while;
1while(条件1){ 1
2 ->条件1为真->2->
do{ 3->条件2为真->...->3->条件2为真->
3 3->条件2为假->4
}while(条件2) ->........
4 ->条件1为真->2->
} 3->条件2为真->....->3->条件2为真->
5 3->条件2为假->4
->条件1为假->5
do...while嵌套while;
1 1->
do{ 2->条件1为真->3->...->条件1为真
2 ->3->条件1为假->4->条件2为真->
while(条件1){ ....->
3 2->条件1为真->3->....->条件1为真
} ->3->条件1为假->4->条件2为真->
4 2->条件1为真->3->.....->条件1为真
}while(条件2) ->3->条件1为假->4->条件2为假->5
5
while循环,do.....while循环,for循环流程图。
数组:
一维数组:
创建一维数组
先声明,再用new关键字去进行内存分配
数组元素类型 数组名字[];
数组元素类型[] 数组名字;
数组元素类型决定了数组的数据类型,它可以是JAVA中任意的数据类型,包括简单类型和组合类型。数组名字为一个合法的标识符。
声明的同时为数组分配内存
这种创建数组的方法是将数组的声明和内存的分配合在一起执行。语法如下
数组元素的类型 数组名 = new 数组元素的类型[数组元素的个数];
5.2.2初始化一维数组
数组与基本数据类型一样可以进行初始化操作。数组的初始化可分别初始化 数组中的每个元素。数组的初始化有以下两种方式:
int arr[]=new int{1,2,3,5,25};
二维数组:
5.3.1创建二维数组
先声明,再用new关键字进行内存分配
数组元素的类型 数组名字[][];
数组元素的类型[][]数组名字;
5.3.2初始化二维数组
二维数组的初始化与一维数组初始化类似,同样可以使用大括号完成。
替换数组元素
arrays,fill(数组名,值);
替换数组部分元素:前改后不改
Arrays.fill(数组名,前索引,后索引,值);
数组元素排序
Arrays.sort(数组名)
复制数组:空位补0溢出去掉
新数组名=Arrays.copyof(旧数组名,新数组名);
复制数组部分元素:前在后不在
新数组名=Aaaays.copyOfRange(旧数组名,前索引,后索引);
查询数组元素:先排序在查绚
索引=Arrays.binarySearch(数组名,元素);
查询数组元素:先排序在查询,前含后不含
索引=Arrays.binarySearch(数组名,前索引,后索引,元素);
冒泡排序
在程序设计中,经常需要将一组数列进行排序,这样更加方便统计与查询。程序常用的排序方法有冒泡排序、选择排序和反转排序等。冒泡排序以简洁的思想与实现方法而备受开发人员青睐,是广大学习者最先接触的一种排序算法,也是最常用的数组排序算法之一,它排序数组元素的过程总是将较小的数往前放、较大的数往后放,类似水中气泡往上升的动作,所以称为冒泡排序。
有直接选择排序和反转排序两种。