Java(课后笔记)
switch多选择结构
- switch case语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支

```plaintext
package com.struct;
public class Swicth01 {
public static void main(String[] args) {
//case穿透//switch匹配一个具体的值
char grade = 'B';
switch (grade){
case 'A':
System.out.println("优秀");
break;//可选
case 'B' :
System.out.println("良好");
break;//可选
case 'C' :
System.out.println("及格");
break;//可选
case 'D' :
System.out.println("再接再厉");
break;//可选
case 'E' :
System.out.println("挂科");
break;//可选
default:
System.out.println("未知等级");
}
}
}
package com.struct;
public class Swicth02 {
public static void main(String[] args) {
String name = "琴江";
//JDK7新特性,表达式结果可以是字符串
//字符的本质是数字
//反编译 java---class(字节码文件)----反编译(IDEA)
switch (name){
case "琴江":
System.out.println("琴江");
break;
case "狂神":
System.out.println("狂神");
break;
default:
System.out.println("弄啥嘞!");
}
}
}
循环结构
1.while循环

输出0~100
package com.struct;
public class While01 {
public static void main(String[] args) {
//输出0~100
int i = 0;
while (i<100){
i++;
System.out.println(i);
}
}
}
死循环
package com.struct;
public class While02 {
public static void main(String[] args) {
//死循环
while (true){
//等待客户端连接
//定时检查
//。。。。。。。
}
}
}
计算1+2+3+...+100=?
package com.struct;
public class While03 {
public static void main(String[] args) {
//计算1+2+3+...+100=?
int i=0;
int sum = 0;
while (i<=100){
sum = sum + i;
i++;
}
System.out.println(sum);
}
}
2.do...while循环

package com.struct;
public class DoWhile01 {
public static void main(String[] args) {
int i =0;
int sum = 0;
do {
sum = sum + i;
i++;
}while (i<=100);
System.out.println(sum);
}
}
while和do...while的区别
package com.struct;
public class DoWhile02 {
public static void main(String[] args) {
int a = 0;
while (a<0){
System.out.println(a);
a++;
}
System.out.println("==========");
do {
System.out.println(a);
a++;
}while (a<0);
}
}
3.for循环

package com.struct;
public class For01 {
public static void main(String[] args) {
int a = 1;//初始化条件
while (a<=100) {//条件判断
System.out.println(a);
a+=2;//迭代
}
System.out.println("while循环结束!");
//初始化+布尔表达式+更新
for (int i=1;i<=100;i++){
System.out.println(i);
}
System.out.println("for循环结束");
//死循环
for (; ; ) {
}
}
}
练习1:
package com.struct;
public class For02 {
public static void main(String[] args) {
int oddSum = 0;
int evenSum = 0;
for (int i = 0; i < 100; i++) {
if (i%2!=0){
oddSum+=i;
}else {
evenSum+=i;
}
}
System.out.println("奇数的和"+oddSum);
System.out.println("偶数的和"+evenSum);
}
}
练习2:
package com.struct;
public class For03 {
public static void main(String[] args) {
for (int i = 0; i <= 1000; i++) {
if (i%5==0){
System.out.println(i+"\t");
}
if (1%(5*3)==0){
System.out.println();//换行
//System.out.print("\n");换行
}
}
//println 输出完会换行
//print 输出完不会换行
}
}
练习3:
package com.struct;
public class For04 {
public static void main(String[] args) {
//1.先打印第一列
//2.把固定的1再用一个循环包起来
//3.去掉重复项 i <= j
//4.调整样式
for (int j = 1; j <= 9; j++) {
for (int i = 1; i <= j; i++) {
System.out.print(j+"*"+i+"="+(j*i) + "\t");
}
System.out.println();
}
}
}
4.增强for循环

package com.struct;
public class For05 {
public static void main(String[] args) {
int[] numbers = {10,20,30,40,50,};//定义了一个数组
for (int i = 0; i<5;i++){
System.out.println(numbers[i]);
}
System.out.println("========");
//遍历数组的元素
for (int x:numbers){
System.out.println(x);
}
}
}
5.break continue goto

break
package com.struct;
public class Break01 {
public static void main(String[] args) {
int i = 0;
while (i<100){
i++;
System.out.println(i);
if (i==30){
break;
}
}
System.out.println("123");
}
}
continue
package com.struct;
public class Continue01 {
public static void main(String[] args) {
int i = 0;
while (i<100){
i++;
if(i%10==0){
System.out.println();
continue;
}
System.out.print(i);
}
}
}
goto (lable标签)
package com.struct;
public class Label01 {
public static void main(String[] args) {
//打印101~150之间所有的质数
//质数是指再大于1的自然数中,出了1和它本身意外不再有其他因数的自然数。
int count = 0;
//不建议使用
outer:for (int i=101;i<150;i++){
for (int j=2;j<i/2;j++){
if (i%j==0){
continue outer;
}
}
System.out.print(i+" ");
}
}
}
流程控制练习
- 打印三角形
package com.struct;
public class Test01 {
public static void main(String[] args) {
//打印三角形 5行
for (int i = 1; i <= 5; i++) {
for (int j = 5; j >= i; j--) {
System.out.print(" ");
}
for (int j = 1; j <= i; j++) {
System.out.print("*");
}
for (int j = 1; j < i; j++) {
System.out.print("*");
}
System.out.println();
}
}
}

浙公网安备 33010602011771号