qq_53885101 2020-12-26 15:32 采纳率: 0%
浏览 96

我编写的这个代码为什么总显示有if没有else啊?求大神指点指点小白

import java.util.Scanner;
public class UseManger {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		User[] users=new User[1000];
		while (true) {
			System.out.println("  通讯录管理系统    ");
			System.out.println("===========");
			System.out.println("1.新增联系人");
			System.out.println("2.修改联系人");
			System.out.println("3.查看联系人");
			System.out.println("4.删除联系人");
			System.out.println("5.查询联系人");
                        System.out.println("6.退出系统");
			System.out.println("===========");
			String s=sc.next();
			if(s.equals("1")) {
				User user=new User();
				System.out.print("请输入联系人的姓名:");
				user.name=sc.next();
				System.out.print("请输入联系人的电话号码:");
				user.phone=sc.next();
				System.out.print("请输入联系人的地址:");
				user.address=sc.next();
                                System.out.print("请输入联系人的地址邮编:");
				user.postalcode=sc.next();
				for(int i=0;i<users.length;i++) {
					if(users[i]==null) {
						users[i]=user;
						break;
					}
				}
				System.out.println("添加成功");
			}else if(s.equals("2")) {
				System.out.print("请输入要修改的联系人姓名:");
				String setname=sc.next();
				for(User user:users) {
					if(user!=null&&user.name.equals(setname)) {
						System.out.print("请输入要修改的联系人电话号码:");	
						user.phone=sc.next();
						System.out.print("请输入要修改的联系人地址:");
						user.address=sc.next();
                                                System.out.print("请输入要修改的联系人地址邮编:");
						user.postalcode=sc.next();
						System.out.println("修改成功");
					}
				}
				
			}else if(s.equals("3")) {
				System.out.println("姓名\t电话\t地址\t地址邮编");
				for(User user : users) {
					if(user!=null) {
						System.out.println(user.name+"\t"+user.phone+"\t"+user.address+"\t"+user.postalcode);
					}
				}
			}else if(s.equals("4")) {
				System.out.print("请输入要删除的联系人姓名:");
				String src=sc.next();
				int i;
				for(i=0;i<users.length;i++) {
					if(users[i]!=null&&users[i].name.equals(src)) {
						users[i]=null;
						break;
					}
				}
				if(i<users.length) {
					System.out.println("删除成功");
				}else {
					System.out.println("查无此人");
                                }else if(s.equals("5")){  
                                 System.out.println("请输入要查询的联系人姓名");
                                 String src=sc.next();
                                  int i;
                                 }else if(users.length == 0){
                                  System.out.println("请先添加联系人!");
                                    for(int i=0;i<user.length;i++)
                	            if(a[i] != null)
                                 if((a[i].name).equals(name))
                                 
                        System.out.println("联系人: "+a[i].name+"   电话:"+a[i].phone +  "地址:"+a[i].address + "地址邮编:"+a[i].postalcode);
                                  return a[i];
                               }else{ 
                                 return null;    
                                }else if(s.equals("6")) {
				System.out.println("安全退出");
				break;
			}else{
				System.out.println("你的输入有误,请重试");
			}
		}
	}
}}
  • 写回答

5条回答 默认 最新

  • 无厘头编程 2020-12-26 16:01
    关注

    你嫌麻烦,可以用 switch。例如,

    String str = "two"; 
            switch(str) 
            { 
                case "one": 
                    System.out.println("one"); 
                    break; 
                case "two": 
                    System.out.println("two"); 
                    break; 
                case "three": 
                    System.out.println("three"); 
                    break; 
                default: 
                    System.out.println("no match"); 
            } 
    评论

报告相同问题?

悬赏问题

  • ¥100 有人会搭建GPT-J-6B框架吗?有偿
  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名