那么我们今天就开始进入Java的入口函数,也正式进入开始以编程为主体的学习啦~
学过C语言的都知道,main函数是一个程序的主函数,它控制程序各功能的准确运行。
那么接下来我们将讲解主函数以及顺序结构的大致运行顺序。
1.main入口函数
Java虚拟机通过main()方法找到需要启动的运行程序,并且检查main函数所在类是否被Java虚拟机装载。
如果没有装载,那么就装载该类,并且装载所有相关其它的类。因此程序在运行的时候,第一执行的方法就是main()方法。
那么如何证明在程序中是先运行的main()函数呢?小编这里程序给大家演示:
package self;
import java.util.Scanner;
public class demo {
public static void main(String[] agrs) {// java程序入口
System.out.println("main方法是Java程序的入口,一个程序中必须包含一个main方法");
for (int i = 0; i < agrs.length; i++) {
System.out.println(agrs[i]);
}
}
}
class demo1 {// 一个.java文件中,只能有一个public class
// 并且public class的类名必须和源文件名一致
public static void main() {
System.out.println("demo1的运行情况");
}
public void test() {
}
}
运行结果为:
以至于为什么输出了abc,这个我们在运行之前可以设置,在程序中右键找到Run As->Run Configurations,在右边下面的小框中找到Arguments,再在Program arguments里面设置几个字符常量即可。
二.顺序结构
接下来就是简单的顺序结构,可以简单理解为它是采用的自上而下逐行执行代码。自上而下的顺序执行为:输入数据-处理数据-输出结果。
顺序结构首先要讲的还是if分支结构,它的基本选择结构是根据逻辑来判断代码的执行顺序。
if的简单分支语句的基本语法结构为:满足判断条件,则执行相对应的代码,否则不执行任何代码。
if(条件){
语句;}
以if语句为例:
package self;
public class demo {
public static void main(String[] agrs) {
//boolean bool =3<4;
if(3<4) {//若为true执行下面括号中的语句
System.out.println("条件成立");
}
}
}
运行结果为:
若条件不止一两个时,则可采用多个if一个else的语句块。
当条件多于两个时,我们采用if加else if和else的多分支结构。
继续,我们以代码的例子说明:
package self;
import java.util.Scanner;
//引用工具包
public class demo {
public static void main(String[] agrs) {
Scanner input = new Scanner(System.in);
// 从jdk提供的工具包获得一个Scanner工具
// 帮我们从控制台获得一个输入
System.out.println("请输入年龄:");
int age = input.nextInt();// 获得输入的整数
if (age < 18) {
System.out.println("您是未成年哦!");
} else if (age >= 18 && age < 40) {
System.out.println("青年人哦!");
} else if (age >= 40 && age < 60) {
System.out.println("中年人哦!");
} else {
System.out.println("老年人哦!");
}
}
}
运行结果为:
接下来是Switch-case语句,大致用法是根据Switch里面的表达式是否正确,如果是,则判断case里面的值,若是true,则执行当前case下面的语句块,然后执行后面的语句,直到遇见break。
Switch-case语法:
switch(表达式){
case 取值1:
语句块1;
break;
case 取值2:
语句块2;
break;
...
default:语句块n;
}
与if-else比较,switch-case的优点在于:
其缺点是:不能实现嵌套循环。
循环结构(for while语句),这里以编写程序的方式讲解,比如计算1+2+3+4...100的值。
while 语句语法:
while(){
循环体
}
代码实例:
package self1;
import java.util.Scanner;
public class demo1 {
public static void main(String[] args) {
int i=0;
int sum =0;
while(i<=100) {
sum +=i;
i++;
}
System.out.println("和为:"+sum);
}
}
运行结果为:
do while语句:无论循环条件是否成立,至少都会执行一遍do里面的语句块。
代码实例:
package self1;
import java.util.Scanner;
public class demo1 {
public static void main(String[] args) {
int i=1;
int sum =0;
do {
sum+=i;
i++;
}while(i<=100);
System.out.println("和为:"+sum);
}
}
输出结果同上。
for循环语句主要用于按预定次数执行语句或语句块。语法如下:
for(initialization;condition;iteration)
initialization:最先执行,仅被执行一次。
condition:布尔表达式作为循环判断条件。
iteration:增加或减少循环变量的表达式。
代码实例:
package self1;
import java.util.Scanner;
public class demo1 {
public static void main(String[] args) {
int sum=0;
for(int i=1;i<=100;i++) {
sum+=i;
}
System.out.println("和为:"+sum);
}
}
输出结果同上。
三.循环控制语句
break语句除了可以用于switch语句中,还可以用于循环体中。
当循环体中遇见break语句时,立即结束循环,跳至循环外,执行循环结构后面的语句。
代码实例:
package self1;
import java.util.Scanner;
public class demo1 {
public static void main(String[] args) {
for(int i=1;i<=10;i++) {
if(i==5) {
break;//结束当前循环
}
System.out.println(i);
}
}
}
continue语句用于结束本次循环,即在循环体遇见continue语句,循环体中continue语句后面的语句不会执行,接着执行下一次的判定。
代码实例:
package self1;
import java.util.Scanner;
public class demo1 {
public static void main(String[] args) {
for(int i=1;i<=10;i++) {
if(i==5) {
//break;//结束当前循环且退出循环
continue;//结束当前循环,并进入下一次循环
}
System.out.println(i);
}
}
}
输出结果同上。
继续干Java~