顺序结构
- JAVA的基本结构就是顺序结构,除非特别指明,否则就按照顺序一个一个的执行
- 顺序结构是最基本的算法结构
- 语句与语句之间,框与框之间都是按照从上到下的顺序进行的,它是由若干个依次执行的步骤组成,他是任何一个算法都离不开的基本算法结构。
public static void main(String[] args) {
System.out.println("hello1");//第一个执行
System.out.println("hello2");//第二个执行
System.out.println("hello3");//第三个执行
System.out.println("hello4");//第四个执行
System.out.println("hello5");//第五个执行
/*
改算法结构较简单,程序都是一步一步执行的
*/
}
选择结构
if单选择结构
if(布尔表达式){
//如果布尔表达式为true将执行的语句
}
public class IfDemo01 {
public static void main(String[] args) {
//if单选择结构
Scanner sc = new Scanner(System.in);
System.out.println("请输入字符串:");
String s = sc.nextLine();
if(s.equals("hello")){
System.out.println("你输入的字符串是:"+s);
}
System.out.println("END");
sc.close();
}
}
if双选择结构
if(布尔表达式){
//如果布尔表达式的值为true
}else{
//如果布尔表达式的值为false
}
public class IfDemo02 {
public static void main(String[] args) {
//if双选择结构
Scanner sc = new Scanner(System.in);
System.out.println("请输入你的成绩:");
int score = sc.nextInt();
if(score>=60){
System.out.println("你的成绩及格了");
}else {
System.out.println("你的成绩没有及格");
}
sc.close();
}
}
if多选择结构
if(布尔表达式1){
//如果布尔表达式1的值为true执行代码
}else if(布尔表达式2){
//如果布尔表达式2的值为true执行代码
}else if(布尔表达式3){
//如果布尔表达式3的值为true执行代码
}else {
//如果以上布尔表达式都不为true执行代码
}
public class IfDemo03 {
public static void main(String[] args) {
//if多选择结构
Scanner sc = new Scanner(System.in);
System.out.println("请输入你的成绩:");
int score = sc.nextInt();
if(score==100){
System.out.println("你的成绩是满分");
}else if(score>=90 && score<100){
System.out.println("你的成绩A级");
}else if(score>=80 && score<90){
System.out.println("你的成绩B级");
}else if(score>=70 && score<80){
System.out.println("你的成绩C级");
}else if(score>=60 && score<70){
System.out.println("你的成绩D级");
}else if(score>=0 && score<6){
System.out.println("你的成绩不及格");
}else{
System.out.println("你输入的成绩不合法");
}
sc.close();
}
}
嵌套的if结构
if(布尔表达式1){
///如果布尔表达式1的值为true执行代码
if(布尔表达式2){
//如果布尔表达式2的值为true执行代码}
}
switch多选择结构
多选择结构还有一个实现方式就是switch case语句
switch(expression){
case value :
//语句
break;l/可选case value :
//语句
break;l/可选
//你可以有任意数量的case语句default : //可选
//语句
}
public class SwitchDemo01 {
public static void main(String[] args) {
//switch 是跟case配套使用的 执行完之后主要加break
char s = 'A';
switch (s){
case 'A':
System.out.println("A级");
break;
case 'B':
System.out.println("B级");
break;
case 'C':
System.out.println("C级");
break;
case 'D':
System.out.println("D级");
break;
default:
System.out.println("未知等级");
}
}
}
public class SwitchDemo02 {
public static void main(String[] args) {
//jdk 1.7 之后,switch支持String类型的变量
String name = "张三";
switch (name){
case "张三":
System.out.println("你输入的名字是张三");
break;
case "李四":
System.out.println("你输入的名字是李四");
break;
case "王五":
System.out.println("你输入的名字是王五");
break;
default:
System.out.println("啥也不是");
}
}
}
循环结构
不满足循环就不会进入循环,循环要有终止条件,避免死循环
public class WhileDemo01 {
public static void main(String[] args) {
//计算1到100的和
int i = 0;
int sum = 0;
while (i<=100){
sum = sum + i;
i++;
}
System.out.println(sum);
}
}
public class DowhileDemo {
public static void main(String[] args) {
//计算1到100的和
int i = 0;
int sum = 0;
do {
sum = sum + i;
i++;
}while (i<=100);
System.out.println(sum);
}
}
public class For {
public static void main(String[] args) {
//输出1到100
System.out.println("输出开始");
for (int i= 1; i <=100; i++){
System.out.println(i);
}
System.out.println("输出结束");
}
}
//计算0到100之间奇数之和与偶数之和
public class ForDemo01 {
public static void main(String[] args) {
//计算0到100之间奇数之和与偶数之和
int oddsum = 0;
int eventsun = 0;
for (int i = 0; i <= 100; i++) {
if(i%2 == 0){
oddsum += i;
}else {
eventsun += i;
}
}
System.out.println("奇数之和为:"+oddsum);
System.out.println("偶数之和为:"+eventsun);
}
}
//输出1到100之间能被5整除的数字,并且每行输出三个
public class ForDemo02 {
public static void main(String[] args) {
//输出1到100之间能被5整除的数字,并且每行输出三个
for (int i = 1; i <= 1000; i++) {
if(i%5 == 0){
System.out.print(i+" ");
}
if (i%(3*5) == 0){
System.out.println();
}
}
}
}
增强型循环
public class ForDemo03 {
public static void main(String[] args) {
int[] nubber = {10,20,30,40,50,60};
//输出数组
//使用for循环
for (int i = 0; i < 5; i++) {
System.out.println(nubber[i]);
}
System.out.println("==========");
//使用增强型循环
for(int x:nubber){//遍历所有number
System.out.println(x);
}
}
}