/* 控制流程语句: 语句: 使用分号分隔的代码就是一个语句。 顺序语句: 按照代码顺序从上往下执行所有的代码就是顺序语句 ; 也是一个语句 */ class Demo1 { public static void main(String[] args){ /* int i = 10; //声明变量的语句 ;//空语句 System.out.println("Hello World!"); //输出语句 */ System.out.println("A"); System.out.println("B"); System.out.println("C"); System.out.println("D"); } }
/* 控制流程语句之(if)判断语句 if判断语句的格式: 格式1:适用于一种情况使用。 if(判断的条件){ 符合条件执行的代码; } 格式2 : 适用于两种情况下去使用的。 if(判断条件){ 符合条件执行的代码 }else{ 不符合条件执行的代码; } 三元运算符的格式:布尔表达式?值1:值2; if-else 与三元运算符非常像: 三元运算符的优点: 结构比较简洁。 三元运算符的缺点: 符合条件必须要返回一个结果,不能执行语句。 格式三: 适用于多种情况下去使用的。 if(判断条件1){ 符合条件1执行的代码 }else if(判断条件2){ 符合条件2执行的代码 }else if(判断条件3){ 符合条件3执行的代码 }......else{ 都不符合上述 的条件执行的代码 } if语句要注意的细节: 1. 如果符合条件后只有一个语句需要执行,那么可以省略大括号。但是建议不要省略,因为结构不清晰。 2. if语句的判断条件后不能添加分号,否则会影响到执行的效果的, 需求1:工作经验要两年或者两年以上。 需求2:根据一个变量所记录的数字输出对应的星期。 0 ---星期天 1 星期一 */ class Demo2{ public static void main(String[] args){ int workAge = 2; /* 格式1: if(workAge>=2){ System.out.println("电话通知过来面试.."); } 格式2: if(workAge>=2){ //符合条件执行的代码 System.out.println("电话通知你面试"); }else{ //如果不符合上述的条件执行的代码 System.out.println("电话通知不要再投简历了,不收你!!"); } String result=workAge>=2?"电话通知你面试":"电话通知不要再投简历了,不收你!!"; */ int num = 31; if(num==0){ System.out.println("星期天"); }else if(num==1){ System.out.println("星期一"); }else if(num==2){ System.out.println("星期二"); }else if(num==3){ System.out.println("星期三"); }else if(num==4){ System.out.println("星期四"); }else if(num==5){ System.out.println("星期五"); }else if(num==6){ System.out.println("星期六"); }else{ System.out.println("没有对应的星期"); } } }
/* 需求: 键盘录入一个分数,根据分数输出对应的等级。 比如: 100-90 A等级 89-80 B等级 ..... E等级 接受键盘录入数据的步骤: 1. 创建一个扫描器对象。 2. 调用扫描器对象的nextInt方法扫描数据。 3. 导入包。 */ import java.util.*; class Demo3{ public static void main(String[] args){ //创建一个扫描器 Scanner scanner = new Scanner(System.in); //调用扫描器扫描键盘录入的数据 System.out.println("请输入一个分数:"); int score = scanner.nextInt(); //定义了一个num变量接收扫描到内容。 if(score>=90&&score<=100){ System.out.println("A等级"); }else if(score>=80&&score<=89){ System.out.println("B等级"); }else if(score>=70&&score<=79){ System.out.println("C等级"); }else if(score>=60&&score<=69){ System.out.println("D等级"); }else if(score>=0&&score<=59){ System.out.println("E等级"); }else{ System.out.println("补考.."); } } }
/* 控制流程语句之---if 判断语句 格式一: 只适用于一种情况下去使用。 if(判断条件){ 符合条件执行的代码; } 格式二:适用于两种情况下去使用 if(判断条件){ 符合条件执行的代码 }else{ 不符合条件执行 的 代码 } ] 格式3: 适用于多种情况使用的 if(判断条件1){ 符合条件1执行的 语句; }else if(判断条件2){ 符合条件2执行 的语句; }else if(判断条件3){ 符合条件3执行 的语句; }else if(判断条件4){ 符合条件4执行 的语句; }......else{ 都不符合上述 条件执行的代码... } */ class Demo1 { public static void main(String[] args) { System.out.println("Hello World!"); } }
/* 控制流程语句之----switch选择判断语句 switch语句的格式: switch(你的选择){ case 值1: 符合值1执行的代码 break; case 值2: 符合值 2执行的代码 break; case 值3: 符合值 3执行的代码 break; case 值4: 符合值 4执行的代码 break; ...... default: 你的选择都符合上述的选项时执行的代码; break; } switch语句要注意的事项: 1. switch语句使用的变量只能是byte、 char、 short、int、 String数据类型,String数据类型是从jdk7.0的时候开始支持的。 2. case后面跟的数据必须是一个常量。 3. switch的停止条件: switch语句一旦匹配上了其中的一个case语句,那么就会执行对应的case中的语句代码,执行完毕之后如果没有 遇到break关键字或者是结束switch语句的大括号,那么switch语句不会再判断,按照代码的顺序从上往下执行 所有的代码。直到遇到break或者是结束siwitch语句的大括号为止。 4. 在switch语句中不管代码的顺序如何,永远都是会先判断case语句,然后没有符合的情况下才会执行default语句。 if--else if---else if 语句与switch语句非常的相似: switch语句的优点:switch语句的结构清晰。 switch缺点:如果判断的条件是一个区间范围的,使用switch操作就非常的麻烦了。 判断以下那些不是计算机语言( D ) A java B C# C javascript D android */ class Demo2{ public static void main(String[] args) { int option = 13;//定义一个变量存储你的选择 switch(option){ case 1: System.out.println("java"); break; case 2: System.out.println("C#"); break; case 3: System.out.println("javascript"); break; case 4: System.out.println("android"); break; default: System.out.println("你的选择有误"); break; } /* String str = "world"; switch(str){ case "hello": System.out.println("hello"); break; case "world": System.out.println("world"); break; } */ } }
/* 需求: 接受键盘录入一个月份, 根据对应的月份输出对应的季节。 345 春天 678 夏天 9 10 11 秋天 1 2 12 冬天 要求使用switch语句实现。 */ import java.util.*; class Demo4 { public static void main(String[] args) { System.out.println("请输入一个月份:"); //创建一个扫描器 Scanner scanner = new Scanner(System.in); //调用扫描器的nextInt方法 int month = scanner.nextInt(); switch(month){ case 3: case 4: case 5: System.out.println("春天"); break; case 6: case 7: case 8: System.out.println("夏天"); break; case 9: case 10: case 11: System.out.println("秋天"); break; case 12: case 1: case 2: System.out.println("冬天"); break; default: System.out.println("没有对应的季节"); break; } } }
/* 循环语句----while循环语句 while循环 语句的格式: while(循环的条件){ 循环语句; } while循环语句要注意的事项: 1. while循环语句一般是通过一个变量控制其循环的次数。 2. while循环语句的循环体代码如果只有一个语句的时候,那么可以省略大括号。但是也是不建议大家省略。 3. while循环语句的判断条件后面不能跟有分号,否则会影响到执行的效果。跟有分号,相当于空代码块 需求: 在控制上打印五句hello world.程序要尽量减少重复代码 */ class Demo5{ public static void main(String[] args) { int count = 0; while(count<5){ System.out.println("Hello World!"); count++; } } }
/* 需求: 计算1+2+3+....+ 100的总和。 */ class Demo6{ public static void main(String[] args){ int num = 1; int sum = 0;//定义一个变量用于保存每次相加的结果 while(num<=100){ sum = sum+num; // sum = 1 num++; } System.out.println("sum = "+ sum); } }
/* 需求1:计算1-100,7的倍数总和。 7 14 21 如何产生一个随机数。 步骤: 1. 创建一个随机数对象。 2. 调用随机数对象的nextInt方法。 3. 导包。 */ class Demo7{ public static void main(String[] args){ int num = 1; int sum = 0;//定义一个变量用于保存每次相加的总和。 while(num<=100){ // num = 1 if(num%7==0){ sum = sum+num; } num++; } System.out.println("总和是:"+ sum); } }
/* 需求2: 实现猜数字游戏, 如果没有猜对可以继续输入你猜的数字,如果猜对了停止程序。 最多只能猜三次,如果还剩下最后一次机会的时候要提醒用户。 */ import java.util.*; class Demo8 { public static void main(String[] args) { //创建一个随机数对象 Random random = new Random(); //调用随机数对象的nextInt方法产生一个随机数 int randomNum = random.nextInt(10)+1; //要求随机数是 1~10 //创建一个扫描器对象 Scanner scanner = new Scanner(System.in); while(true){ System.out.println("请输入你要猜的数字:"); //调用扫描器的nextInt方法扫描一个数字 int guessNum = scanner.nextInt(); if (guessNum>randomNum){ System.out.println("猜大了.."); }else if(guessNum<randomNum){ System.out.println("猜小了.."); }else{ System.out.println("恭喜你,猜对了`.."); break; } } } }
/* 控制流程语句----do while循环语句 格式: do{ }while(判断条件); 需求: 在控制上打印五句hello world. while循环语句与do-while循环语句的区别: while循环语句是先判断后执行循环语句的,do-while循环语句 是先执行,后判断。不管条件是否满足至少会执行一次。写判断语句,不要受不管条件是否满足至少会执行一次的影响 */ class Demo9{ public static void main(String[] args) { /* int count =0; while(count<5){ System.out.println("Hello World!"); count++; } // 在java中,java编译器是不允许写废话。 boolean flag = false; while(flag){ System.out.println("Hello World!"); } boolean flag = false; do{ System.out.println("Hello World!"); }while(flag); */ int count = 0; do { System.out.println("hello world"); count++; }while(count<5); } }
/* 需求: 使用do-while算出1-100之间偶数的总和。 */ class Demo10 { public static void main(String[] args) { int num = 1; int sum = 0;//定义一个变量用于保存每次相加的总和 do{ if(num%2==0){ sum += num; } num++; }while(num<101); System.out.println("sum = "+ sum); } }
/* 控制流程语句之---for循环语句 for循环语句的格式: for(初始化语句;判断语句;循环后的语句){ 循环语句; } for循环语句 要注意的事项: 1. for(;;)这种写法 是一个死循环语句,相当于while(true); 2. for循环语句的初始化语句只会执行一次,只是在第一次循环的时候执行而已。 3. for循环语句的循环体语句只有一句的时候,可以省略大括号不写。但是不建议省略。 需求: 在控制上打印五句hello world. */ class Demo11{ public static void main(String[] args) { /* int count=0; while(count<5);{ System.out.println("Hello World!"); count++; } int count = 0 ; for(System.out.println("初始化语句A");count<5 ;System.out.println("循环后的语句C")){ System.out.println("循环体语句B"); count++; } */ for(int count = 0 ; count<5; count++){ } { System.out.println("hello world"); } } }
/* 需求: 在控制台上打印一个 五行五列矩形/. ***** ***** ***** ***** ***** 先打印一行 */ class Demo12 { public static void main(String[] args){ for(int j = 0 ; j<5 ; j++){ // 控制行数 for(int i = 0 ; i<5 ; i++){ // 控制列数 System.out.print("*"); } // ***** //换行 System.out.println(); } } }
/* 需求: 在控制台上打印一个正立的直角三角形 。 * ** *** **** ***** 多行多列的图形。 行数 5行 列数: 会发生变化 的. 分析列数: i = 0 ; i<5; j=0 ; j<=i 1个星号 i = 1 ; i<5 ;j=0 ; j<=1 2个星号 i = 2 ; i<5; j=0 ; j<=2 3个星号 ..... */ class Demo13{ public static void main(String[] args){ for(int i = 0 ; i< 5 ; i++){ for(int j = 0 ; j<=i ; j++){ //控制列数 System.out.print("*"); } //换行 System.out.println(); } } }
/* 需求: 打印一个倒立的直角三角形。 ***** **** *** ** * 5行 列数会发生变化 j<(5-i) i= 0 ; i<5; j=0 ; j<5 ;五个星号 i = 1; i<5; j=0 ; j<4; 四个星号 i = 2; i<5; j=0 ; j<3; 三个星号 */ class Demo14{ public static void main(String[] args){ for(int i = 0 ; i<5; i++){ for (int j = 0 ; j<(5-i) ;j++ ){ System.out.print("*"); } //换行 System.out.println(); } /* for (int i = 5; i > 0; i--) { for (int j = 0; j < i; j++) { System.out.print("*"); } System.out.println(); } */ } }
/* 需求: 打印一个九九乘法表. */ class Demo15{ public static void main(String[] args){ for(int i = 1 ; i<=9 ; i++){ for(int j = 1 ; j<=i ; j++){ //控制列数 System.out.print(i+"*"+j+"="+i*j+"\t"); } //换行 System.out.println(); } } }
/* 转义字符:特殊字符使用”\”把其转化成字符的本身输出,那么使用”\”的字符称作为转移字符。 需求: 在控制台上打印一个 hello" world 常见的转义字符有: \bBackspace (退格键) \tTab 制表符(制表符的作用就是为了让一列对齐) 一个tab一般等于四个空格。 \n换行 \r回车 把光标移动到一行的首位置上。 注意: 如果是在windows系统上操作文件的时候需要换行,是需要\r\n一起使用的。 [ */ import java.io.*; class Demo16 { public static void main(String[] args) throws Exception { //System.out.println("Hello哈哈\rworld!"); File file = new File("F:\\a.txt"); FileWriter out = new FileWriter(file); out.write("大家好\r\n"); out.write("你们好"); out.close(); } }
/* break、 break适用范围:只能用于switch或者是循环语句中。 break作用: 1. break用于switch语句的作用是结束一个switch语句。 2. break用于循环语句中的作用是结束当前所在的循环语句。 笔试题目:break目前位于内层的for循环,如何才能让break作用于外层的for循环。 可以标记解决 标记的命名只要符合标识符的命名规则即可。 */ class Demo17{ public static void main(String[] args){ aaa:for(int j = 0 ; j<3 ; j++){ // j=0 外层for循环 bbb:for(int i = 0 ; i< 2 ; i++){ // i=0 内层for循环 System.out.println("hello world"); // 1次 break aaa; } } } }
/* continue关键字 continue的适用范围: continue只能用于循环语句。continue是跳过continue后面的语句 continue的作用:continue的作用是跳过本次的循环体内容。继续下一次。 continue要注意的事项: 1. 在条件只有一种情况下,continue后面不能跟有其他语句,因为是永远都无法执行到。 2. continue 也可以配合标记使用的。 */ class Demo18{ public static void main(String[] args){ /* for(int i = 0 ; i<5 ; i++){ // i=1 2 if(i==1){ continue; } System.out.println("hello "+i); } outer:for(int i = 0 ; i<3; i++){ // i= 0; i =1 i=2 3 inner:for(int j = 0 ; j<2 ; j++){ //j=0 System.out.println("hello"); //1 2 3 continue outer; } } 需求: 计算1-100的偶数总和. */ int sum = 0 ; for(int num = 1 ; num<=100 ; num++){ if(num%2!=0){ continue; //如果是奇数就跳过本次循环。 } sum = sum+num; } System.out.println("总和:"+ sum); } }
本文出自 “小鱼的博客” 博客,谢绝转载!