2/21-3/1
商城登录页面
完善了一下,注册下密码核对部分
package com.woniuxu.day03;import java.util.Scanner;public class Demo1 {public static void main(String [] args){Scanner scanner = new Scanner(System.in);//1.模拟一个登录注册退出的功能实现loadUI();//2.使用switch……case实现String option = scanner.nextLine();switch(option){case "1":loginUI();//调用外部代码mainUI();break;case "2":registerUI();break;case "0":System.out.println("正在推出程序,请稍后……");System.exit(5);break;default:System.out.println("您的输入有误");}scanner.close();}/*** 开机ui*/public static void loadUI(){System.out.println("*******欢迎登陆*******");System.out.println("\t1.登录");System.out.println("\t2.注册");System.out.println("\t0.退出");System.out.println("———————————————————");}/*** 1.登录验证的方法*/public static void loginUI(){Scanner scanner = new Scanner(System.in);System.out.println("---欢迎进入商城登陆系统---");while(true){System.out.println("请输入用户名");String username = scanner.nextLine();System.out.println("请输入密码");String password = scanner.nextLine();//进行登录逻辑验证if("admin".equals(username) && "123".equals(password)){break;}else{System.out.println("您的输入有误,请重新输入");}}System.out.println("登录成功");scanner.close();}/*** 2.注册验证的方法*/public static void registerUI(){Scanner scanner = new Scanner(System.in);System.out.println("欢迎进入商城注册页面");System.out.println("请输入您的用户名:");String username = scanner.nextLine();String psw;String psw1;while(true){System.out.println("请输入您的密码:");psw = scanner.nextLine();System.out.println("请再次输入您的密码");psw1 = scanner.nextLine();if(psw.equals(psw1)){break;}else{System.out.println("您俩次输入的密码不一致,请重新输入");}}System.out.println("您已注册成功");System.out.println("您的用户名为:"+username+"您的密码为:"+ psw);scanner.close();}/*** 商城主页面*/public static void mainUI(){System.out.println("欢迎进入商城页面");}}
输入年月日,计算这是此年第几天
package com.woniuxy.demo_if;import java.util.Scanner;import java.util.InputMismatchException;public class Test4 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int year = 0;System.out.println("请您输入一个年份:");while(true){try{year = scanner.nextInt();break;}catch(InputMismatchException e){System.out.println("您输入的格式有误请重新输入");scanner.next();//两种理解①将nextInt中的错误输出清除②next清空缓存输入新的内容作为下一次的nextInt的输入}}boolean flag = isLeapYear(year);//默认非闰年int month = 0;System.out.println("请输入一个月份:");while(true){try{month = scanner.nextInt();if(month < 0 || month >12) {System.out.println("您输入的月份有误,请重新输入:");continue;}break;}catch(InputMismatchException e){System.out.println("您输入的格式有误请重新输入");scanner.next();}}int day = 0;System.out.println("请输入一个日期:");while(true){try{day = scanner.nextInt();if(day < 0) {System.out.println("日期必须时正,请重新输入");continue;}else if(month == 2 && flag == true && day >= 30) {System.out.println("闰年2月只有29天,请重新输入");continue;}else if(month == 2 && flag == false && day >= 29){System.out.println("非闰年2月只有28天,请重新输入");continue;}else if(month == 4 || month == 6 || month == 9 || month == 11 && day >=31) {System.out.println(month+"月只有30天,请重新输入");continue;}else if(month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12 && day >=32){System.out.println(month+"月只有31天,请重新输入");continue;}break;}catch(InputMismatchException e){System.out.println("您输入的格式有误请重新输入");scanner.next();}}int days = 0;switch(month){default:System.out.println("您输入的有误");case 12:days += 30;case 11:days += 31;case 10:days += 30;case 9:days += 31;case 8:days += 31;case 7:days += 30;case 6:days += 31;case 5:days += 30;case 4:days += 31;case 3:if(flag){days += 29;}else{days += 28;}case 2:days += 31;case 1:}days = days + day;System.out.println(year+"年"+month+"月"+day+"日,共有"+days+"天");scanner.close();}public static boolean isLeapYear(int year){//判断是否为闰年if(year % 4 == 0 && year % 100 ==0 || year % 400 == 0 ){return true;}else{return false;}}}
冒泡排序
package com.woniuxy.demo2;
import java.util.Scanner;
import java.util.InputMismatchException;
public class Test2 {
public static void main(String[] args) {
// int[] a = {12,34,23,56,69,38,47};
int[] a = buildArr();
for(int i=0; i<a.length-1; i++) {
for(int j = 0; j<a.length-i-1; j++) {
exchangeArr(a, j, j+1);//外部定义了一个叫exchange的方法用于交换数组内容
}
}
for(int i:a) {
System.out.print(i + " ");
}
}
public static int[] exchangeArr(int[] Arr,int index_a, int index_b) {//交换数组下的数据
int temp = 0;
if(Arr[index_a] > Arr[index_b]) {
temp = Arr[index_a];
Arr[index_a] = Arr[index_b];
Arr[index_b] = temp;
}
return Arr;
}
public static int[] buildArr() {//创建一个数组
Scanner scanner = new Scanner(System.in);
System.out.println("请输入您要创建的数组大小:");
int num = 0;
while(true) {
try {
num = scanner.nextInt();
break;
}catch(InputMismatchException e){
System.out.println("您输入的不是整数,请重新输入:");
scanner.nextLine();
}
}
System.out.println("现在录入数组");
int[] Arr = new int[num];
for(int i = 0; i < num; i++) {
System.out.println("请输入一个整数:");
try {
Arr[i] = scanner.nextInt();
}catch(InputMismatchException e) {
System.out.println("您输入的不是整数,请重新输入:");
scanner.nextLine();
i--;
}
}
scanner.close();
return Arr;
}
}
猜拳游戏
要求三局两胜
package com.woniuxy.Demo1;
import java.util.Random;
import java.util.Scanner;
public class Test1 {
static Scanner scanner = new Scanner(System.in);
static int flag = 0;//标记输-1赢1平0
public static void main(String[] args) {
fingerGame();//猜拳
scanner.close();
}
public static void fingerGame() {
Random rand = new Random();
int count = 0;
while(count <3 ) {//三局
UI();
int player = scanner.nextInt();
scanner.nextLine();
int computer = rand.nextInt(3)+1;
single(player, computer);
if(flag == 2){//连赢两把
break;
}
if(flag == -2){//连输两把
break;
}
count++;
}
if(flag > 0) {
System.out.println("您赢了");
}
else if(flag < 0) {
System.out.println("您输了");
}else {
System.out.println("平局");//平平平,输1赢1平1
}
}
public static void UI() {
System.out.println("------- 欢迎进入猜拳游戏 --------");
System.out.println("\t 1.剪刀");
System.out.println("\t 2.石头");
System.out.println("\t 3.布");
System.out.println("------请玩家按对应数字完成出拳 ----");
}
public static int single( int player, int computer) {
if(computer == 1) {
System.out.println("电脑出了剪刀");
switch(player) {
case 1://剪刀
System.out.println("这一局平局");
break;
case 2://石头
System.out.println("您这一局赢了");
flag++;
break;
case 3://布
System.out.println("您这一局输了");
flag--;
break;
}
}else if(computer == 2) {
System.out.println("电脑出了石头");
switch(player) {
case 1://剪刀
System.out.println("您这一局输了");
flag--;
break;
case 2://石头
System.out.println("这一局平局");
break;
case 3://布
System.out.println("您这一局赢了");
flag++;
break;
}
}else if(computer == 3) {
System.out.println("电脑出了布");
switch(player) {
case 1://剪刀
System.out.println("您这一局赢了");
flag++;
break;
case 2://石头
System.out.println("您这一局输了");
flag--;
break;
case 3://布
System.out.println("这一局平局");
break;
}
}
return flag;
}
}
要求一定要决出胜负
//10.猜拳(不限次数,但一定会决出结果)
package com.woniuxy.HomeWork;
import java.util.Random;
import java.util.Scanner;
public class homeWork2 {
static Scanner scanner = new Scanner(System.in);
static int win = 0;//记录赢了几局
static int lose = 0;//记录输了几局
static int dogfall = 0;//记录平了几局
public static void main(String[] args) {
// 石头剪刀布
fingerGame();
scanner.close();
}
public static void fingerGame() {
Random rand = new Random();
while(win != 2 && lose != 2 ) {//只有输赢,没有平局
UI();
int player = scanner.nextInt();
scanner.nextLine();
int computer = rand.nextInt(3)+1;
single(player, computer);
}
if(win>=2) {
System.out.println("您赢了");
}
else if(lose >= 2) {
System.out.println("您输了");
}else {
System.out.println("平局");
}
}
public static void UI() {
System.out.println("------- 欢迎进入猜拳游戏 --------");
System.out.println("\t 1.剪刀");
System.out.println("\t 2.石头");
System.out.println("\t 3.布");
System.out.println("------请玩家按对应数字完成出拳 ----");
}
public static void single( int player, int computer) {
if(computer == 1) {
System.out.println("电脑出了剪刀");
switch(player) {
case 1://剪刀
System.out.println("这一局平局");
dogfall++;
break;
case 2://石头
System.out.println("您这一局赢了");
win++;
break;
case 3://布
System.out.println("您这一局输了");
lose++;
break;
}
}else if(computer == 2) {
System.out.println("电脑出了石头");
switch(player) {
case 1://剪刀
System.out.println("您这一局输了");
lose++;
break;
case 2://石头
System.out.println("这一局平局");
dogfall++;
break;
case 3://布
System.out.println("您这一局赢了");
win++;
break;
}
}else if(computer == 3) {
System.out.println("电脑出了布");
switch(player) {
case 1://剪刀
System.out.println("您这一局赢了");
win++;
break;
case 2://石头
System.out.println("您这一局输了");
lose++;
break;
case 3://布
System.out.println("这一局平局");
dogfall++;
break;
}
}
}
}
10.//(三局两胜制猜拳)
package com.woniuxy.Demo1;
import java.util.Random;
import java.util.Scanner;
public class Test1 {
static Scanner scanner = new Scanner(System.in);
static int flag = 0;//标记输-1赢1平0
public static void main(String[] args) {
fingerGame();//猜拳
scanner.close();
}
public static void fingerGame() {
Random rand = new Random();
int count = 0;
while(count <3 ) {//三局
UI();
int player = scanner.nextInt();
scanner.nextLine();
int computer = rand.nextInt(3)+1;
single(player, computer);
if(flag == 2){//连赢两把
break;
}
if(flag == -2){//连输两把
break;
}
count++;
}
if(flag > 0) {
System.out.println("您赢了");
}
else if(flag < 0) {
System.out.println("您输了");
}else {
System.out.println("平局");//平平平,输1赢1平1
}
}
public static void UI() {
System.out.println("------- 欢迎进入猜拳游戏 --------");
System.out.println("\t 1.剪刀");
System.out.println("\t 2.石头");
System.out.println("\t 3.布");
System.out.println("------请玩家按对应数字完成出拳 ----");
}
public static int single( int player, int computer) {
if(computer == 1) {
System.out.println("电脑出了剪刀");
switch(player) {
case 1://剪刀
System.out.println("这一局平局");
break;
case 2://石头
System.out.println("您这一局赢了");
flag++;
break;
case 3://布
System.out.println("您这一局输了");
flag--;
break;
}
}else if(computer == 2) {
System.out.println("电脑出了石头");
switch(player) {
case 1://剪刀
System.out.println("您这一局输了");
flag--;
break;
case 2://石头
System.out.println("这一局平局");
break;
case 3://布
System.out.println("您这一局赢了");
flag++;
break;
}
}else if(computer == 3) {
System.out.println("电脑出了布");
switch(player) {
case 1://剪刀
System.out.println("您这一局赢了");
flag++;
break;
case 2://石头
System.out.println("您这一局输了");
flag--;
break;
case 3://布
System.out.println("这一局平局");
break;
}
}
return flag;
}
}
