顺序语句:程序至上而下执行,一条执行完毕后再执行下一条,一直执行到程序末尾; 选择语句:判断语句,根据条件来选择到底执行哪个语句; 循环语句:根据条件来判断执行的次数。 |
执行步骤:先有键盘,连接设备、安装驱动,输入数字
import java.util.Scanner; //该代码必须在package下一行,如无package声明,可在首行 new Scanner(System.in).nextInt() //得到用户输入的整数 new Scanmer (System.in).nextDouble() //得到用户输入的浮点数 new Scanner(System.in).next() //得到用户输入的字符串,空格结束 new Scanner(System.in).nextLine() //得到用户输入的字符串,换行结束 |
范例:
import java.util.Scanner; //导包(装键盘驱动),Scanner可以变成* public class demo2{ public static void main(String[] args) { Scanner scan = new Scanner(System.in); //连接键盘,scan是一个名字,可以随意取 System.out.println("请输入整数"); int num1 = scan.nextInt(); System.out.println("你输入的整数是"+num1); System.out.println("请输入小数"); double num2 = scan.nextDouble(); System.out.println("你输入的小数是"+num2); } } |
import java.util.Scanner; public class demo4{ public static void main(String[] args) { System.out.println("东软跨境电商平台"); System.out.println("1.制造商管理"); System.out.println("2.商品管理"); System.out.println("请输入你的选择"); Scanner scan = new Scanner(System.in); int a = scan.nextInt(); if(a==1){ System.out.println("进入东软跨境电商平台"); }else if(a==2){ System.out.println("进入1.制造商管理"); }else if(a==3){ System.out.println("进入2.商品管理"); }else{ System.out.println("退出"); } } } |
随机数:在产生过程中是按照部分概率随机产生的,其结果是不可预测的;
伪随机数:计算机中的随机函数是按照一定算法模拟产生的,因此成为伪随机数
import java.util.Random; //该代码必须在package下一行,如无package声明,可在首行 多行import可以依次编写,import代码没有必须顺序 产生随机代码:new Randow().nextInt(正整数); 括号中的数字代表产生随机数的范围,如为10,则产生0~9之间的随机整数 |
import java.util.Random; public class demo40{ public static void main(String[] args) { int a = new Random().nextInt(10); System.out.println("随机数为"+a); } } //随机数为2 |
If(判断条件){ 语句; } |
判断语句可以是一个boolean值,也可以是一个表达式(结果也必须是boolean值) |
public class demo30{ public static void main(String[] args) { int a = 3 ; if (a>10){ System.out.println(a); } System.out.println("a<10"); } } |
If(判断条件){ 成立时的语句; } Else{ 不成立时的语句; } |
public class demo31{ public static void main(String[] args) { int a = 3 ; if (a%2==1){ System.out.println("奇数"); } else{ System.out.println("偶数"); } } } |
System.out.println((a%2==1)?"奇数":"偶数"); 以上if语句等同于此三目运算符 |
If语句中的花括号可以省略,但是不建议省略
If(判断条件){ 成立时的语句; } Else if{ 成立时的语句1; } Else { 不成立时的语句; } |
public class demo1{ public static void main(String[] args) { int a = 3 ; if(a==1){ System.out.println("a的值等于1"); }else if(a==2){ System.out.println("a的值等于2"); }else if(a==3){ System.out.println("a的值等于3"); }else{ System.out.println("其他数字"); } } } |
语法格式
Switch(表达式|变量){ Case 值1: 语句; [ break; ] Case 值2: 语句; [ break; ] Default: 语句; } |
import java.util.Scanner; public class demo5{ public static void main(String[] args) { System.out.println("东软跨境电商平台"); System.out.println("1.制造商管理"); System.out.println("2.商品管理"); System.out.println("请输入你的选择"); Scanner scan = new Scanner(System.in); int a = scan.nextInt(); switch(a){ case 1: System.out.println("进入东软跨境电商平台"); break; case 2: System.out.println("进入1.制造商管理"); break; case 3: System.out.println("进入2.商品管理"); break; default: System.out.println("退出"); } } } |
说明:
a).Switch支持的类型:byte、int、short、char、String、Byte、Integer、Character、枚举,注意不支持boolean,包括返回boolean类型的表达式
b).case后面的值不可重复(和unicode转义字符集重复也不行),不同进制的相同值也不行
c).case后面的值类型不一定要统一,但需是支持的类型,且可以相互转换的
d).default的位置可以改变,但若不在末尾,建议给default增加一个break;
e).case后面的值必须是常量,不可以是变量
public class demo6{ public static void main(String[] args) { char input = ‘男‘; //采用的是unicode转义字符集,\u7537 switch(input){ case ‘a‘: System.out.println("进入东软跨境电商平台"); break; case ‘男‘: System.out.println("进入1.制造商管理"); break; case 999: System.out.println("进入2.商品管理"); break; default: System.out.println("退出"); } } } //运行正常 |
public class demo7{ public static void main(String[] args) { char input = 86; switch(input/10){ case 10: System.out.println("满分"); break; case 9: System.out.println("优秀"); break; default: System.out.println("差"); break; case 8: System.out.println("良好"); break; } } } |
public class demo8{ public static void main(String[] args) { char input = 95; final int Y = 9; //常量的表示,在前面加上final,且名字建议全部为大写 switch(input/10){ case 10: System.out.println("满分"); break; case Y: System.out.println("优秀"); break; default: System.out.println("差"); break; case 8: System.out.println("良好"); break; } } } //返回 优秀 |
语法格式:
while(循环判断条件){ 语句; } |
public class demo11{ public static void main(String[] args) { int a = 1; int sum = 0; while(a<=100){ sum += a; a++; } System.out.println("结果为"+sum); } } //结果为5050 |
语法格式:
do{ 语句; }while(循环判断条件); |
public class demo13{ public static void main(String[] args) { int a = 1; int sum = 0; do{ sum += a; a++; }while(a<=100); System.out.println("结果为"+sum); } } |
While是先判断,符合条件才执行语句;Do…while不管是否符合都先执行语句,再进行判断 Do…while最少执行一次,while可以一次都不执行; 语法上,Do…while后面必须加上分号,while后面可以不加分号。 |
练习1:打印出100以内所有的奇数
public class demo14{ public static void main(String[] args) { int a = 1; while (a<=100){ switch(a%2){ case 1: System.out.print(a); break; case 0: System.out.print(","); }a++; } } } |
练习2:求10以内奇数之积
public class demo15{ public static void main(String[] args) { int a = 1 ; int sum = 1 ; while (a<=10){ switch(a%2){ case 1: sum *= a; break; } a++; } System.out.print(sum); } } |
语法格式
for (初始化部分; 循环条件判断部分; 迭代部分){ 执行语句块; } |
范例
public class demo20{ public static void main(String[] args) { int sum = 0 ; for(int a=1;a<=100;a++){ sum +=a; } System.out.print(sum); } } |
For循环中的3个部分都可以省略,但是格式不能变
For循环中的3个部分可以包含多个变量,不只是一个变量
public class demo21{ public static void main(String[] args) { int a = 1 ; int sum = 0 ; for(;;){ if(a<=100){ sum +=a; a++; }else{ break; } }System.out.print(sum); } } |
public class demo29{ public static void main(String[] args) { int sum = 0 ; for(int a=1;a<=100;sum+=a,a++){ } System.out.println(sum); } } |
For的判断条件可以是任意的基本数据类型之一,包括boolean
public class demo40{ public static void main(String[] args) { boolean flag = false; for(;!flag;){ System.out.println("a"); } } } |
For语句中的花括号可以省略,但不建议省略
在for循环中,初始值部分和迭代部分可以是多个表达式,表达式之间用逗号分隔
public class demo25{ public static void main(String[] args) { for(int a=1,b=0;a<=10;a++,b++){ System.out.println("hello"); } } } |
public class demo26{ public static void main(String[] args) { for(int a=1,b=10;a<=b;a++,b--){ System.out.println(a*b); } } } |
For的判断条件可以是语句,不只是表达式
public class demo27{ public static void main(String[] args) { int i = 0 ; for(System.out.print("初始值"),System.out.println(i);i<=3;System.out.println(i++)){ } } } |
public class demo30{ public static void main(String[] args) { for(int a=1;a<=100;a++){ int sum = 0 ; sum += a; } System.out.println(sum); } } //报错,找不到第七行的变量sum |
public class demo31{ public static void main(String[] args) { for(int a=1;a<=5;a++){ //第一个for循环 负责行数 for(int b=1;b<=8;b++){ //第二个for循环 负责每行的个数 System.out.print("*"); } System.out.println(); } } } |
在使用循环语句时,只有循环条件为false时,才可结束循环。有时,我们想提前终端循环,那就可以使用break或continue语句,
Break语句可以迫使程序中断,跳出循环。Break语句用于终止最近的封闭循环或它所在的switch语句,控制传递给种植语句后面的语句。
public class demo32{ public static void main(String[] args) { for(int a=1;a<=5;a++){ //负责行数 if(a==4){ break; } System.out.println(a); } } } |
continue语句语句将控制权传递给它所在的封闭迭代语句的下一次迭代。
也就是说,continue语句可以跳出本次循环,继续执行下一次循环。
continue语句只能出现在循环语句while、do…while、for中
public class demo33{ public static void main(String[] args) { for(int a=1;a<=5;a++){ //负责行数 if(a==4){ continue; } System.out.println(a); } } } |
靠自身控制无法终止的程序称为“死循环”
练习1:键盘输入一个月份,判断当月多少天?(2月28天)
import java.util.Scanner; public class demo36{ public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.println("请输入月份"); int month = scan.nextInt(); switch(month){ case 1: case 3: case 5: case 7: case 8: case 10: case 12: System.out.println("你输入的月份有31天"); break; case 2: System.out.println("你输入的月份有28天"); break; case 4: case 6: case 9: case 11: System.out.println("你输入的月份有30天"); break; default: System.out.println("你输入的月份有误"); break; } } } |
练习2:循环得到用户从控制台输入的5个整数,并计算出它们之和
import java.util.Scanner; public class demo37{ public static void main(String[] args) { int sum = 0 ; for(int a=1 ; a<=5 ; a++){ Scanner scan = new Scanner(System.in); System.out.println("请输入整数"); int x = scan.nextInt(); sum += x; }System.out.println("总数为"+sum); } } |
作者:kerwin-chyl
文章链接:https:////www.cnblogs.com/kerwin-chyl
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利
原文:https://www.cnblogs.com/kerwin-chyl/p/12520910.html