java笔记03
java03
控制语句
顺序语句
条件判断结构
if结构
-
if单分支结构
//测试if单分支结构 //掷骰子游戏 /*** 1.如果三次值加起来大于15,则手气不错* 2.如果三次的值在10-15,则一般* 3.如果三次的和在10以下,则不怎么样*/ public class TestIf {public static void main(String[] args) { // double rand = Math.random(); // int rand = (int)(Math.random()*6)+1; // System.out.println(rand); // Math类的使用 Math.random()该方法用于产生0-1区间的double类型的随机数,但不包括1int i = (int)(Math.random()*7);int j = (int)(Math.random()*7);int k = (int)(Math.random()*7);//产生【0,6】之间的随机整数int count = i+j+k;System.out.println("第一次"+i);System.out.println("第一次"+j);System.out.println("第一次"+k);if (count>15){System.out.println("手气不错!");}if (count>=10&&count<=15){System.out.println("手气一般!");}if (count<10){System.out.println("手气不好");}System.out.println("今日得分:"+count); } }
-
if-else双分支结构
/***测试if-else双分支结构*/ public class TestIf02 {public static void main(String[] args) {double r = 4*Math.random();double area = 3.14*r*r;double circle = 2*Math.PI*r;System.out.println("半径:"+r);System.out.println("面积:"+area);System.out.println("周长:"+circle);if (area>=circle){System.out.println("面积的数值大于等于周长!");}else {System.out.println("面积的数值小于周长! ");}//条件运算符int a = 3, b = 4;int c = a<b?b:a;//返回a和b中较大的数System.out.println(c);if(a<b){c=b;}else {c=a;}System.out.println(c);} }
-
if- else if多分支结构
/***测试 if-else if- else*/ public class TestIf03 {public static void main(String[] args) {int age = (int) (120*Math.random());System.out.println("年龄是:"+age);if(age<15){System.out.println("儿童");}else if(age<25){System.out.println("teenager");}else if (age<45){System.out.println("zhong nian");}else if (age<65){System.out.println("middle zhongnian");}else {System.out.println("lao nian");} // int i = (int)(Math.random()*6)+1; // int j = (int)(Math.random()*6)+1; // int k = (int)(Math.random()*6)+1; // int count = i+j+k; // System.out.println("第一次"+i); // System.out.println("第一次"+j); // System.out.println("第一次"+k); // if (count>15){ // System.out.println("手气不错!"); // }else if (count>=10){ // System.out.println("手气一般!"); // }else{ // System.out.println("手气不好"); // } // System.out.println("今日得分:"+count); } }
switch 结构
-
switch中表达式的值,是int(byte,short,char也可,long不行)、枚举,字符串
/* * 测试Switch语句的用法 * */ public class TestSwitch {public static void main(String[] args) {int grade = (int)(Math.random()*4);//大学的年级switch (grade){case 1:System.out.println("da yi!");break;case 2:System.out.println("da er");break;case 3:System.out.println("da san");break;default:System.out.println("da si");break;}} }
/* *测试switch语句 * */ public class TestSwitch02 {public static void main(String[] args) {int month = (int)(Math.random()*12)+1;if (month<7){System.out.println(month +"月,属于上半年");}else{System.out.println(month+"月,属于下半年");}switch (month){case 1:case 2:case 3:case 4:case 5:case 6:System.out.println(month +"月,属于上半年");break;default:System.out.println(month+"月,属于下半年");break;}} }
public class TestSwitch03 {public static void main(String[] args) {int a = 3;switch (a){case 3:System.out.println("3333");break;case 4:System.out.println("4444");break;default:System.out.println("5555");break;}} }
循环结构
当型和直到型
当型
-
while
/* * 测试while语句 * */ public class TestWhile {public static void main(String[] args) {int a = 0;while(a<3){System.out.println("i love you");a++;System.out.println(a);}} }
public class TestWhile02 {public static void main(String[] args) {//累加:1+2+3+4+……+100int i=0;int sum = 0;while (i<=100){sum = sum +i;i++;}System.out.println("1-100 sum:"+sum);} }
-
for
for(初始表达式;布尔表达式;迭代因子){循环体}
先执行初始化部分 -> 布尔表达式 --true--> 循环体 --> 执行迭代因子
/* *测试for循环 * */ public class TestFor {public static void main(String[] args) { // int a = 0;//初始化部分 // while (a < 3) {//布尔表达式 // System.out.println("i love you");//循环体 // a++;//迭代因子 // System.out.println(a); // }for (int a=0;a<3;a++){System.out.println("i love u"+a);}} }
public class TestFor02 {public static void main(String[] args) {int sum =0;for (int i = 0;i<=100;i++){sum = sum +i;}System.out.println(sum);} }
public class TestFor03 {public static void main(String[] args) {//输出9-1for (int i=9;i>0;i--){System.out.print(i+"\t");}System.out.println();//输出90-1之间能被3整除的for (int i = 90;i>0;i--){if(i%3==0){System.out.print(i+"\t");}}} }
直到型
-
do - while循环
-
do while直少被执行一次
do{循环体}while();//此处的;不能省略
嵌套循环
break语句
-
break用于强行退出整个循环
/*** 测试break语句* 产生一百以内的随机数,直到随机数为88时终止循环*/ public class TestBreak {public static void main(String[] args) {int total = 0;//循环的总数while (true){total++;int i = (int)(Math.random()*100);System.out.println(i);if(i==88){break;}}System.out.println("循环的次数:"+total);} }
continue语句
-
continue 用来结束本次循环,继续下一次
/*** 测试Continue语句* 把100-150之间不能被三整除的数输出,并且每行输出五个*/ public class TestContinue {public static void main(String[] args) {int count =0;for (int i = 100; i < 150; i++) {if(i%3==0){continue;}System.out.print(i+" ");count++;if (count==5){System.out.println();count=0;}}} }
-
带标签的continue,帮助我们从内部循环到外部循环
/*** 控制循环嵌套跳转(打印101-150之间所有的质数* 带标签的continue,帮助我们从内部循环到外部循环!*/ public class TestContinue02 {public static void main(String[] args) {outer:for (int i = 100; i <=150 ; i++) {for (int j = 2;j<i/2;j++){if(i%j==0){continue outer;}}System.out.print(i+" ");}} }
测试嵌套循环
/*** 测试嵌套循环*/ public class TestLoop {public static void main(String[] args) {for (int i=1;i<=5;i++){for (int j = 0;j<5;j++){System.out.print(i+"\t");}System.out.println();}} }
/*** 使用嵌套循环实现九九乘法表*/ public class TestLoop02 {public static void main(String[] args) {for (int m = 1; m < 10; m++) {for (int n = 1;n<=m;n++){System.out.print(n+"*"+m+"="+(n*m<10?(" "+n*m):n*m)+"\t");}System.out.println();}} }
方法(method)
-
方法用于定义该类或该类的实例的行为特征和功能实现
-
面向过程中,函数是最基本单位,整个程序由一个函数调用组成
-
面向对象中,整个程序的基本单位是类,方法是从属类和对象的
-
方法的调用方式: - 普通方法:对象名.方法名 - 静态方法:类名.方法名
-
形式参数:方法定义时
-
实参;方法调用时
-
return的两个作用: - 返回值 - 结束方法运行
-
语句块中定义的变量只能自己使用
/*** 测试方法的定义和调用*/ public class TestMethod {public static void main(String[] args) {sayLoveU();add(10,20,30);}public static void sayLoveU(){System.out.println("i love you");System.out.println("我爱你");System.out.println("520");}public static int add(int a,int b, int c){int sum = a+b+c;System.out.println("sum:"+sum);return sum;} }
/*** 定义一个方法处理公司的迟到问题* 输入迟到时间,月薪* 输出:罚款金额*/ public class TestMethod02 {public static int handleLate(int lateMinute,int salary){int fakuan = 0;int daySalary = (int)(salary/22.5);//日薪System.out.println("迟到分钟数:"+lateMinute);System.out.println("月薪:"+salary);if (lateMinute<10){System.out.println("警告");}else if (lateMinute<=20){System.out.println("罚款100元!");fakuan = 100;}else if(lateMinute<=30){System.out.println("罚款200元!");fakuan = 200;}else if (lateMinute<=60){System.out.println("罚款半日工资!");fakuan = daySalary/2;}else {System.out.println("扣除一日工资!");fakuan = daySalary;}return fakuan;}public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.println("请输入迟到时间:");int lateMinute = scanner.nextInt();System.out.println("请输入薪水:");int salary = scanner.nextInt();int fakuan = handleLate(lateMinute,salary);System.out.println("罚款金额:"+fakuan);} }
方法重载
-
重载:一个类中可以定义多个相同的方法,但参数列表不同
-
构造方法重载条件:
-
不同的含义:形参类型,形参个数,形参顺序不同
-
只有返回值不同不构成方法重载
-
只有形参名称不同,不构成方法重载
/*** 测试方法的重载*/ public class TestOverLoad {public static void main(String[] args) {add();add(10);}static void add(){}static void add(int a){} }
递归结构
-
思想:自己调用自己
-
两个部分: - 递归头:什么时候不调用自己 - 递归体:什么时候调用自己
/*** 测试递归*/ public class TestMyself {public static void main(String[] args) {aa();}public static void aa(){System.out.println("aa");bb();}public static void bb(){System.out.println("bb");} }
/*** 计算n的阶乘*/ public class TestMyself02 {public static void main(String[] args) {long startTime = System.currentTimeMillis();//当前时刻long result = factorial(5);long endTime = System.currentTimeMillis();//当前时刻System.out.println(result);System.out.println("递归耗时:"+(endTime-startTime));}public static long factorial(long n){if(n==1){return 1;}else {return n*factorial(n-1);}} }
练习
/***就算100以内的累加和、所有奇数和、所有偶数和*/public class Test001 {public static void main(String[] args) {int sum = 0;int oddSum = 0;//奇数和int evenSum = 0;//偶数和for (int i = 0; i < 100; i++) {//i仅限for循环使用sum += i;//sum = sum+i;if (i%2==0){evenSum += i;}else{oddSum +=i;}}System.out.println("100之内的数字累加和"+sum);System.out.println("100之内所有奇数的和"+oddSum);System.out.println("100之内所有偶数的和"+evenSum);} }
/*** 使用while循环0-130之间的数字,每行显示五个数字*/ public class Test002 {public static void main(String[] args) {//方法一 // int i = 1; // while (i<=130){ // System.out.print(i+"\t"); // if(i%5==0){ // System.out.println(); // } // i++; // }//方法二int i=1;int count = 0;//每行打印一个数while(i<=130) {System.out.print(i+"\t");count++;if(count==5){System.out.println();count = 0;}i++;}} }
package structTest;/*** 输出五行星号*/ public class Test003 {public static void main(String[] args) {for (int i = 0; i < 5; i++) {for (int j = 0; j < 5; j++) {System.out.print("*\t");}System.out.println();}} }
/*** 输出*#交替出现的5*5方阵*/ public class Test004 {public static void main(String[] args) {int count = 0;for (int m = 0; m < 5; m++) {for (int j = 0; j < 5; j++) {if((m+j)%2==1){System.out.print("#\t");}else {System.out.print("*\t");}}System.out.println();}} }
/*** 薪水计算* 通过键盘输入用户的月薪,每年是几个月薪水* 输出用户的年薪* 输出一行字“如果年薪超过十万,恭喜你超越90%的国人”,“如果年薪超过二十万,恭喜你超越98%的国人”* 直到键盘输入数字88,则退出程序(使用break退出循环)* 键盘输入66,则这个用户退出计算不显示“恭喜”,直接显示“重新开始计算……”,然后计算下一个用户的年薪*/ import java.util.Scanner; public class practice001 {public static void main(String[] args) {Scanner s = new Scanner(System.in);System.out.println("********我的薪水计算器**********");System.out.println("1.输入88,退出程序");System.out.println("2.输入66,计算下一个用户的年薪");while (true){System.out.println("请输入月薪:");int monthSalary = s.nextInt();System.out.println("请输入一年几个月薪资:");int months = s.nextInt();int yearSalary = monthSalary*months;//年薪System.out.println("年薪是:"+yearSalary);if(yearSalary>=200000){System.out.println("恭喜你超越98%的国人");}else if(yearSalary>=100000){System.out.println("恭喜你超越90%的国人");}else{System.out.println("继续努力");}System.out.println("输入88,则退出系统。\n输入66,继续计算。");int comm = s.nextInt();if(comm==88){System.out.println("系统退出!");break;}if(comm==66){System.out.println("计算下一个用户:");continue;}}} }
import java.util.Scanner;/*** 个税计算器:* 通过键盘输入用户的月薪* 百度搜索个税的计算方式,计算出应缴纳的税款* 直到键盘输入exit,则退出程序(使用break退出循环)* 1、应交所得税=应税所得*适用税率-速算扣除数应税所得额。* 2、应纳税所得额=月度收入-5000元(起征点)-专项扣除(三险一金等)-专项附加扣除-依法确定的其他扣除。* 3、工资、薪金所得,适用7级超额累进税率,按月应纳税所得额计算征税。* 该税率按个人月工资、薪金应税所得额划分级距,最高一级为45%,最低一级为3%,共7级。*/ public class practice002 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);while (true) {System.out.println("请输入月薪:");double salary = scanner.nextInt();//月薪double jiao = salary-5000;//应纳税所得额double shui = 0;//应纳税额if(jiao<0){System.out.println("个人起征点为5000,不需要纳税");}else if(jiao<=3000){shui = jiao*0.03;salary-=shui;}else if (jiao<=12000){shui = jiao*0.1-210;salary-=shui;}else if (jiao<=25000){shui = jiao*0.25-2660;salary-=shui;}else if (jiao<=35000){shui = jiao*0.3-4410;salary-=shui;}else if (jiao<=80000){shui = jiao*0.35-7160;salary-=shui;}else {shui = jiao*0.45-15160;salary-=shui;}System.out.println("应纳税所得额:"+jiao+"元\t"+"纳税税额"+shui+"元\t"+"实发工资"+salary+"元");System.out.println("输出exit退出程序!若是其他继续计算");String cmd = scanner.next();if(cmd == "exit"){System.out.println("退出程序!");break;}else {continue;}}}}
java笔记03
java03
控制语句
顺序语句
条件判断结构
if结构
-
if单分支结构
//测试if单分支结构 //掷骰子游戏 /*** 1.如果三次值加起来大于15,则手气不错* 2.如果三次的值在10-15,则一般* 3.如果三次的和在10以下,则不怎么样*/ public class TestIf {public static void main(String[] args) { // double rand = Math.random(); // int rand = (int)(Math.random()*6)+1; // System.out.println(rand); // Math类的使用 Math.random()该方法用于产生0-1区间的double类型的随机数,但不包括1int i = (int)(Math.random()*7);int j = (int)(Math.random()*7);int k = (int)(Math.random()*7);//产生【0,6】之间的随机整数int count = i+j+k;System.out.println("第一次"+i);System.out.println("第一次"+j);System.out.println("第一次"+k);if (count>15){System.out.println("手气不错!");}if (count>=10&&count<=15){System.out.println("手气一般!");}if (count<10){System.out.println("手气不好");}System.out.println("今日得分:"+count); } }
-
if-else双分支结构
/***测试if-else双分支结构*/ public class TestIf02 {public static void main(String[] args) {double r = 4*Math.random();double area = 3.14*r*r;double circle = 2*Math.PI*r;System.out.println("半径:"+r);System.out.println("面积:"+area);System.out.println("周长:"+circle);if (area>=circle){System.out.println("面积的数值大于等于周长!");}else {System.out.println("面积的数值小于周长! ");}//条件运算符int a = 3, b = 4;int c = a<b?b:a;//返回a和b中较大的数System.out.println(c);if(a<b){c=b;}else {c=a;}System.out.println(c);} }
-
if- else if多分支结构
/***测试 if-else if- else*/ public class TestIf03 {public static void main(String[] args) {int age = (int) (120*Math.random());System.out.println("年龄是:"+age);if(age<15){System.out.println("儿童");}else if(age<25){System.out.println("teenager");}else if (age<45){System.out.println("zhong nian");}else if (age<65){System.out.println("middle zhongnian");}else {System.out.println("lao nian");} // int i = (int)(Math.random()*6)+1; // int j = (int)(Math.random()*6)+1; // int k = (int)(Math.random()*6)+1; // int count = i+j+k; // System.out.println("第一次"+i); // System.out.println("第一次"+j); // System.out.println("第一次"+k); // if (count>15){ // System.out.println("手气不错!"); // }else if (count>=10){ // System.out.println("手气一般!"); // }else{ // System.out.println("手气不好"); // } // System.out.println("今日得分:"+count); } }
switch 结构
-
switch中表达式的值,是int(byte,short,char也可,long不行)、枚举,字符串
/* * 测试Switch语句的用法 * */ public class TestSwitch {public static void main(String[] args) {int grade = (int)(Math.random()*4);//大学的年级switch (grade){case 1:System.out.println("da yi!");break;case 2:System.out.println("da er");break;case 3:System.out.println("da san");break;default:System.out.println("da si");break;}} }
/* *测试switch语句 * */ public class TestSwitch02 {public static void main(String[] args) {int month = (int)(Math.random()*12)+1;if (month<7){System.out.println(month +"月,属于上半年");}else{System.out.println(month+"月,属于下半年");}switch (month){case 1:case 2:case 3:case 4:case 5:case 6:System.out.println(month +"月,属于上半年");break;default:System.out.println(month+"月,属于下半年");break;}} }
public class TestSwitch03 {public static void main(String[] args) {int a = 3;switch (a){case 3:System.out.println("3333");break;case 4:System.out.println("4444");break;default:System.out.println("5555");break;}} }
循环结构
当型和直到型
当型
-
while
/* * 测试while语句 * */ public class TestWhile {public static void main(String[] args) {int a = 0;while(a<3){System.out.println("i love you");a++;System.out.println(a);}} }
public class TestWhile02 {public static void main(String[] args) {//累加:1+2+3+4+……+100int i=0;int sum = 0;while (i<=100){sum = sum +i;i++;}System.out.println("1-100 sum:"+sum);} }
-
for
for(初始表达式;布尔表达式;迭代因子){循环体}
先执行初始化部分 -> 布尔表达式 --true--> 循环体 --> 执行迭代因子
/* *测试for循环 * */ public class TestFor {public static void main(String[] args) { // int a = 0;//初始化部分 // while (a < 3) {//布尔表达式 // System.out.println("i love you");//循环体 // a++;//迭代因子 // System.out.println(a); // }for (int a=0;a<3;a++){System.out.println("i love u"+a);}} }
public class TestFor02 {public static void main(String[] args) {int sum =0;for (int i = 0;i<=100;i++){sum = sum +i;}System.out.println(sum);} }
public class TestFor03 {public static void main(String[] args) {//输出9-1for (int i=9;i>0;i--){System.out.print(i+"\t");}System.out.println();//输出90-1之间能被3整除的for (int i = 90;i>0;i--){if(i%3==0){System.out.print(i+"\t");}}} }
直到型
-
do - while循环
-
do while直少被执行一次
do{循环体}while();//此处的;不能省略
嵌套循环
break语句
-
break用于强行退出整个循环
/*** 测试break语句* 产生一百以内的随机数,直到随机数为88时终止循环*/ public class TestBreak {public static void main(String[] args) {int total = 0;//循环的总数while (true){total++;int i = (int)(Math.random()*100);System.out.println(i);if(i==88){break;}}System.out.println("循环的次数:"+total);} }
continue语句
-
continue 用来结束本次循环,继续下一次
/*** 测试Continue语句* 把100-150之间不能被三整除的数输出,并且每行输出五个*/ public class TestContinue {public static void main(String[] args) {int count =0;for (int i = 100; i < 150; i++) {if(i%3==0){continue;}System.out.print(i+" ");count++;if (count==5){System.out.println();count=0;}}} }
-
带标签的continue,帮助我们从内部循环到外部循环
/*** 控制循环嵌套跳转(打印101-150之间所有的质数* 带标签的continue,帮助我们从内部循环到外部循环!*/ public class TestContinue02 {public static void main(String[] args) {outer:for (int i = 100; i <=150 ; i++) {for (int j = 2;j<i/2;j++){if(i%j==0){continue outer;}}System.out.print(i+" ");}} }
测试嵌套循环
/*** 测试嵌套循环*/ public class TestLoop {public static void main(String[] args) {for (int i=1;i<=5;i++){for (int j = 0;j<5;j++){System.out.print(i+"\t");}System.out.println();}} }
/*** 使用嵌套循环实现九九乘法表*/ public class TestLoop02 {public static void main(String[] args) {for (int m = 1; m < 10; m++) {for (int n = 1;n<=m;n++){System.out.print(n+"*"+m+"="+(n*m<10?(" "+n*m):n*m)+"\t");}System.out.println();}} }
方法(method)
-
方法用于定义该类或该类的实例的行为特征和功能实现
-
面向过程中,函数是最基本单位,整个程序由一个函数调用组成
-
面向对象中,整个程序的基本单位是类,方法是从属类和对象的
-
方法的调用方式: - 普通方法:对象名.方法名 - 静态方法:类名.方法名
-
形式参数:方法定义时
-
实参;方法调用时
-
return的两个作用: - 返回值 - 结束方法运行
-
语句块中定义的变量只能自己使用
/*** 测试方法的定义和调用*/ public class TestMethod {public static void main(String[] args) {sayLoveU();add(10,20,30);}public static void sayLoveU(){System.out.println("i love you");System.out.println("我爱你");System.out.println("520");}public static int add(int a,int b, int c){int sum = a+b+c;System.out.println("sum:"+sum);return sum;} }
/*** 定义一个方法处理公司的迟到问题* 输入迟到时间,月薪* 输出:罚款金额*/ public class TestMethod02 {public static int handleLate(int lateMinute,int salary){int fakuan = 0;int daySalary = (int)(salary/22.5);//日薪System.out.println("迟到分钟数:"+lateMinute);System.out.println("月薪:"+salary);if (lateMinute<10){System.out.println("警告");}else if (lateMinute<=20){System.out.println("罚款100元!");fakuan = 100;}else if(lateMinute<=30){System.out.println("罚款200元!");fakuan = 200;}else if (lateMinute<=60){System.out.println("罚款半日工资!");fakuan = daySalary/2;}else {System.out.println("扣除一日工资!");fakuan = daySalary;}return fakuan;}public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.println("请输入迟到时间:");int lateMinute = scanner.nextInt();System.out.println("请输入薪水:");int salary = scanner.nextInt();int fakuan = handleLate(lateMinute,salary);System.out.println("罚款金额:"+fakuan);} }
方法重载
-
重载:一个类中可以定义多个相同的方法,但参数列表不同
-
构造方法重载条件:
-
不同的含义:形参类型,形参个数,形参顺序不同
-
只有返回值不同不构成方法重载
-
只有形参名称不同,不构成方法重载
/*** 测试方法的重载*/ public class TestOverLoad {public static void main(String[] args) {add();add(10);}static void add(){}static void add(int a){} }
递归结构
-
思想:自己调用自己
-
两个部分: - 递归头:什么时候不调用自己 - 递归体:什么时候调用自己
/*** 测试递归*/ public class TestMyself {public static void main(String[] args) {aa();}public static void aa(){System.out.println("aa");bb();}public static void bb(){System.out.println("bb");} }
/*** 计算n的阶乘*/ public class TestMyself02 {public static void main(String[] args) {long startTime = System.currentTimeMillis();//当前时刻long result = factorial(5);long endTime = System.currentTimeMillis();//当前时刻System.out.println(result);System.out.println("递归耗时:"+(endTime-startTime));}public static long factorial(long n){if(n==1){return 1;}else {return n*factorial(n-1);}} }
练习
/***就算100以内的累加和、所有奇数和、所有偶数和*/public class Test001 {public static void main(String[] args) {int sum = 0;int oddSum = 0;//奇数和int evenSum = 0;//偶数和for (int i = 0; i < 100; i++) {//i仅限for循环使用sum += i;//sum = sum+i;if (i%2==0){evenSum += i;}else{oddSum +=i;}}System.out.println("100之内的数字累加和"+sum);System.out.println("100之内所有奇数的和"+oddSum);System.out.println("100之内所有偶数的和"+evenSum);} }
/*** 使用while循环0-130之间的数字,每行显示五个数字*/ public class Test002 {public static void main(String[] args) {//方法一 // int i = 1; // while (i<=130){ // System.out.print(i+"\t"); // if(i%5==0){ // System.out.println(); // } // i++; // }//方法二int i=1;int count = 0;//每行打印一个数while(i<=130) {System.out.print(i+"\t");count++;if(count==5){System.out.println();count = 0;}i++;}} }
package structTest;/*** 输出五行星号*/ public class Test003 {public static void main(String[] args) {for (int i = 0; i < 5; i++) {for (int j = 0; j < 5; j++) {System.out.print("*\t");}System.out.println();}} }
/*** 输出*#交替出现的5*5方阵*/ public class Test004 {public static void main(String[] args) {int count = 0;for (int m = 0; m < 5; m++) {for (int j = 0; j < 5; j++) {if((m+j)%2==1){System.out.print("#\t");}else {System.out.print("*\t");}}System.out.println();}} }
/*** 薪水计算* 通过键盘输入用户的月薪,每年是几个月薪水* 输出用户的年薪* 输出一行字“如果年薪超过十万,恭喜你超越90%的国人”,“如果年薪超过二十万,恭喜你超越98%的国人”* 直到键盘输入数字88,则退出程序(使用break退出循环)* 键盘输入66,则这个用户退出计算不显示“恭喜”,直接显示“重新开始计算……”,然后计算下一个用户的年薪*/ import java.util.Scanner; public class practice001 {public static void main(String[] args) {Scanner s = new Scanner(System.in);System.out.println("********我的薪水计算器**********");System.out.println("1.输入88,退出程序");System.out.println("2.输入66,计算下一个用户的年薪");while (true){System.out.println("请输入月薪:");int monthSalary = s.nextInt();System.out.println("请输入一年几个月薪资:");int months = s.nextInt();int yearSalary = monthSalary*months;//年薪System.out.println("年薪是:"+yearSalary);if(yearSalary>=200000){System.out.println("恭喜你超越98%的国人");}else if(yearSalary>=100000){System.out.println("恭喜你超越90%的国人");}else{System.out.println("继续努力");}System.out.println("输入88,则退出系统。\n输入66,继续计算。");int comm = s.nextInt();if(comm==88){System.out.println("系统退出!");break;}if(comm==66){System.out.println("计算下一个用户:");continue;}}} }
import java.util.Scanner;/*** 个税计算器:* 通过键盘输入用户的月薪* 百度搜索个税的计算方式,计算出应缴纳的税款* 直到键盘输入exit,则退出程序(使用break退出循环)* 1、应交所得税=应税所得*适用税率-速算扣除数应税所得额。* 2、应纳税所得额=月度收入-5000元(起征点)-专项扣除(三险一金等)-专项附加扣除-依法确定的其他扣除。* 3、工资、薪金所得,适用7级超额累进税率,按月应纳税所得额计算征税。* 该税率按个人月工资、薪金应税所得额划分级距,最高一级为45%,最低一级为3%,共7级。*/ public class practice002 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);while (true) {System.out.println("请输入月薪:");double salary = scanner.nextInt();//月薪double jiao = salary-5000;//应纳税所得额double shui = 0;//应纳税额if(jiao<0){System.out.println("个人起征点为5000,不需要纳税");}else if(jiao<=3000){shui = jiao*0.03;salary-=shui;}else if (jiao<=12000){shui = jiao*0.1-210;salary-=shui;}else if (jiao<=25000){shui = jiao*0.25-2660;salary-=shui;}else if (jiao<=35000){shui = jiao*0.3-4410;salary-=shui;}else if (jiao<=80000){shui = jiao*0.35-7160;salary-=shui;}else {shui = jiao*0.45-15160;salary-=shui;}System.out.println("应纳税所得额:"+jiao+"元\t"+"纳税税额"+shui+"元\t"+"实发工资"+salary+"元");System.out.println("输出exit退出程序!若是其他继续计算");String cmd = scanner.next();if(cmd == "exit"){System.out.println("退出程序!");break;}else {continue;}}}}
发布评论