Java入门基础
什么是java程序
程序通常指某些事情的一种执行方式和过程的描述。人们所下达每一个命令都称之为指令,计算机按照某种顺序完成一系列指令,这一系列指令的集合称为程序。
开发Java的运行环境
开发java需要借助jdk来进行编译和运行。这时我们需要先安装一个jdk
- 首先,我们需要下载JDK安装包,你可以在www.sun.java.com上下载。
在安装的过程中选择【开发工具】,安装过程我就不说了,全部是下一步,记住JDK安装位置。
我的安装路径是在D盘:
- 安装完成之后,打开我的电脑—>属性面板
选择高级系统设置
-
选择环境变量
-
在系统变量这块进行设置:
新建系统变量:
变量名:【JAVA_HOME】
变量值:【D:\java\jdk1.6】
特别注意:我的jdk安装在了这个位置D:\java\jdk1.6所以就填这个,你自己的jdk安装在了什么位置,就填什么哦!
- 在系统变量里面找到Path选择编辑:
在最后添加【;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin\】
特别注意:在最后添加,千万不能把默认的删除哦!如果删除了,你的部分程序就无法运行了哦!
-
CLASSPATH:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
-
在cmd(Windows+R)里输入javac验证环境变量是否配置成功:
如果出现上面界面说明你已经配置好了!你的电脑就可以运行java程序了。
大功告成了!
开发Java程序的步骤
1、先在记事本上编写一个基本的java程序,java的源文件拓展名为.java
2、再到cmd里输入刚刚编写的源文件。javac+文件名+.java进行编译Java源文件
3、编译成功后再输入java +文件名即可运行java源文件(编译失败会报错,排除错误后需要重新编译再运行)
java的基本框架
public class Hello{
public static void main(String[]args){
System.out.println("hello!")
}
}
1、程序框架:
类名必须与文件名一致。
public class 文件名{ }
2、main方法:
在程序中把它称为“入口”。是所有java程序的起点。
public static void main(String [ ] args){ }
3、输出语句:
System.out.println(“hello!”);
以上代码的作用是向控制台输出,即输出hello!
数据类型、变量
数据类型
1、基本数据类型:
语法:
整数型:int 、long
int num=1;
long man=1231;
小数型:double、float
double num=1.0;
float man=0.0;
字符型:char
char num='男';
布尔型:boolean(结果只有true和false)
boolean num=true;
字节:byte
2、引用数据类型:
字符串:string
String num="hello!java"
变量
1、变量是电脑用来储存数据的一个基本单元,不同的变量相互独立。
在程序运行的过程中,将数值通过变量加以储存,以便程序随时使用。步骤如下
(1)声明变量,即“根据数据类型在内存中申请一块空间”,这里需要给变量命名。
语法:
数据类型 变量名;
char a;
double s;
String name;
(2)给变量名赋值,即“将数据存储至对应的内存空间”。
语法:
变量名 = 值;
c='男';
d=9.9;
name="廖辉";
(3)调用变量。使用存储的变量。
System.out.print(c); //从控制台输出变量a存储的数据
System.out.print(d); //从控制台输出变量d存储的数据
System.out.print(name); //从控制台输出变量name存储的数据
变量名命名规则
1、必须以字母,下划线”_“或者“$”符号开头
2、变量名可以包括数字,但不能以数字开头。
3、除了“_”或“$”符号以外,变量名不能包含任何特殊字符。
4、变量名不能使用任何Java关键字,如int、class、publie等。
运算符
关系运算符
程序用boolean数据类型表示真和假,程序可以通过比较来得知真假,这就是关系运算符。
下面列出了关系运算符:
1、> -------大于 ------99>100,结果为false
2、< -------小于 ------99<100,结果为true
3、> = —小于等于—99>=99,结果为true
4、< = —大于等于—99<=98,结果为false
5、== ----等于---------99==99,结果为true
6、!= ----不等于-----99!=100,结果为true
逻辑运算符
我们使用选择结构时,需要判断条件,这时我们需要用到用到逻辑运算符。下面介绍一些常用的逻辑运算符。
1、&&—并且—条件1&&条件2。多个条件同时为真结果才为真,多个条件有一个为假,结果就为假。
2、||—或者—条件1||条件2。多个有一个为真,结果就为真,多个条件全为假,结果才是假。
3、!—非---!条件。条件为真时,结果为假;条件为假时,结果为真。
算术运算符
( > )大于 —9>10,结果为false。
( < )小于—1<2,结果为true
(>=)大于等于—100>=100,结果为true
(<=)小于等于—100<=99,结果为false
()等于—11,结果为true
(! =)不等于2!=2,结果为false
关系运算符是用来做比较运算的,比较的结果为boolean类型的值,结果只有真和假。
扫描仪的使用
使用扫描仪需要先导包import java.util.Scanner;
在main方法下面输入Scanner in=new Scanner(System.in);
然后再输入数据类型 +变量名=in.next(); 如int a=in.nextInt();即可接收在键盘上输入的值了
if选择结构
if选择结构是根据条件判断之后再做处理的一种语法结构。
语法:
if(条件){
//代码块
}
上图是代码的图形化表示,称为流程图。结合流程图来看,if选择结构的含义和执行过程一目了然。
执行流程:
先对条件进行判断。结果为true时,执行大括号里的代码块,再执行if{}后面的代码块,当结果为false时,不执行大括号里的代码块,而直接执行if结构后面的代码。
多重if选择结构
多重if选择结构和基本if不同,在需要判断条件是连续的区间时多重if选择结构有很大优势。
语法:
if(条件1){
//代码块1
}else if(条件2){
//代码块2
}else if(条件3){
//代码块3
}else{
//代码块4
}
流程图:
先对条件1进行判断。结果为true时,执行代码块1,如果条件不成立则对}else if(){的条件进行判断如果条件2也不成立,则执行else里的代码块。
嵌套if选择结构
嵌套if就是在if选择结构里再嵌入if选择结构。
语法:
if(条件1){
if(条件2){
//代码块1
}else {
//代码块2
}
}else{
//代码块3
}
先判断条件1,如果成立,进入条件2,如果不成立,则输出代码块3.
switch选择结构
语法:
switch(表达式){
case 常量 1:
//代码块1;
break;
case 常量 2:
//代码块2;
break;
default:
//代码块3
break;
}
1、switch:表示开关,这个开关就是switch关键字后面小括号里表达式的值。值可以是int,short,byte,char,String类型表达式。
2、case:表示情况,情形,case后可以是int,short,byte,char,String类型。通常是一个固定的值。case块可以有多个,顺序可以改变,但每个case后常量的值必须各不相同。
3、default:表示默认,如果其他case条件都不满足,则执行default下的代码块,可以不要。
4、break:表示停止,即跳出当前结构
循环结构
while循环结构
while循环结构的执行顺序一般如下:
1、声明并初始化循环变量。
2、判断循环条件是否满足,如果满足则执行循环操作,否则退出循环。
3、执行完循环操作后,再次判断循环条件,条件为true时执行循环操作,条件为false时退出循环。
语法:
while(循环条件){
//循环操作
}
流程图:
do-while循环结构
和while循环差不多,不同的是while循环先判断再执行,do-while至少执行一次循环操作。先执行一次再判断。
语法:
do{
//循环操作
}while(循环条件);
流程图:
for循环结构
for循环和while循环相似,只不过for循环把初始部分,结束条件,迭代部分放在同一个小括号里,用;隔开。
语法:
for(表达式1;表达式2;表达式3){
//循环体
}
表达式1:赋值语句,循环结构的初始部分,为循环变量赋初始值
表达式2:条件语句,循环结构的循环条件
表达式3:赋值语句,循环结构中的迭代部分,通常使用++或- -运算符
循环体:重复执行的代码。
流程图:
数组
在Java中,数组就是一个变量,用于将相同数据类型的数据存储在内存中。数组中的每一个数据元素都属于同一数据类型。
如果说变量是在内存空间分配一块合适的空间,然后将数据存储在那个空间中,那么数组就是在内存空间划出一串连续的空间。
数组的语法:
数据类型[] 数组名;
或者
数据类型 数组名;
以上两种方式都可以声明一个数据,数组名可以是任意合法的变量名。声明数组就是告诉计算机该数组中数据的类型是什么。列如:
int[] scores; //存储学员的成绩,类型为int
double[] helie; //存储学员的成绩,类型为double
String[] names; //存储学员的成绩,类型为String
分配空间
语法:
数组名 =new 数据类型[数组长度];列如:
scores=new int[30]; //长度为30的int类型数据
helie=new double[30]; //长度为30的double数据类型
names=new String[30]; //长度为30的String数据类型
赋值
语法:
数组名[下标值];
列如,向scores数组中存放数据:
scores[0]=89;
scores[1]=33;
scores[2]=54;
......
数组排序
Arrays.sort(数组名);
这串代码是对数组进行升序排序。
循环结构进阶
二重循环结构
在前面,我们已经知道了什么是循环,已经循环的三种形式,即while循环、do-while循环和for循环,那么这里将学习二重循环。
什么是二重循环
简单的说,二重循环就是在一个循环的循环体内又包含另一个完整的循环结构。
前面学习过的三种循环:while循环、do–while循环和for循环。这三种循环之间是可以互相嵌套的。一个循环要嵌套在另一个循环中,下面四种形式都是合法的。
语法:
\\while和while循环嵌套
while(循环条件1){
\\循环操作1
while(循环条件2){
\\循环操作2
}
}
\\do-while和do-while循环嵌套
do{
\\循环操作1
do{
循环操作2
}while(循环条件2)
}while(循环条件1)
\\for循环与for循环嵌套
for(循环条件1){
循环操作1
for(循环条件2){
循环操作2
}
}
\\while和for循环嵌套
while(循环条件1){
\\循环操作1
for(循环条件2){
循环操作2
}
}
上面四种形式中,循环条件1和循环操作1对应的循环称为外层循环,循环条件2和循环操作2对应的循环称为内层循环,内层循环结束后才执行外层循环的语句。在二重循环中,外层循环变量变化一次,内层循环变量要从初始值到
结束值变化一遍。
在二重循环中使用continue语句
\\continue
for(;;){
for(;;){
if(){
continue; \\如果条件不成立,跳出本轮循环
}
}
}
在二重循环中使用break语句
for(;;){
for(;;){
if(){
break; \\如果条件条件成立,则跳到外层循环。
}
}
}