首页 > 试题广场 >

一个学生类,提供name、age、gender、phone、

[问答题]
一个学生类,提供name、age、gender、phone、address,email成员变量,且为每个成员变量提供setter、getter方法。利用此定义的Student类,定义一个Student[]数组保存多个Student对象作为通讯录数据。程序可通过name、email、address查询,如果找不到数据,则进行友好提示。
import java.nio.file.WatchService;

public class Stduent {
    private String name;
    private int age;
    private char gender;
    private String phone;
    private String address;
    private String email;
    
    Stduent(){}
    Stduent(String name,int age,char gender,String phone,String address,String email){
        this.name = name;
        this.age = age;
        this.gender = gender;
        this.phone = phone;
        this.address = address;
        this.email = email;
    }
    
    /* get() */
    public String nameGet(){
        return name;
    }
    public int ageGet(){
        return age;
    }
    public char genderGet(){
        return gender;
    }
    public String phoneGet(){
        return phone;
    }
    public String addressGet(){
        return address;
    }
    public String emailGet(){
        return email;
    }
    
    /* set() */
    public void nameSet(String name){
        this.name = name;
    }
    public void ageSet(int age){
        this.age = age;
    }
    public void genderSet(char gender){
        this.gender = gender;
    }
    public void phoneSet(String phone){
        this.phone = phone;
    }
    public void addressSet(String address){
        this.address = address;
    }
    public void emailSet(String email){
        this.email = email;
    }
    
    public void stdEat(String food){
        System.out.println(name+" eats "+food);
    }
    public void stdDrink(String drinks){
        System.out.println(name+" drinks "+drinks);
    }
    public void stdPlay(String sports){
        System.out.println(name+" plays "+sports);
    }
    public static void stdFind(Stduent[] std,String str,int index){
        boolean flags=false;
        if(index==0){
            for(int i=0;i<std.length;i++){
                if(str.equals(std[i].nameGet())){
                    System.out.println(str+" was found!");
                    flags=true;
                    break;
                }
            }
        }
        else if(index==1){
            for(int i=0;i<std.length;i++){
                if(str.equals(std[i].emailGet())){
                    System.out.println(std[i].nameGet()+" was found!");
                    flags=true;
                    break;
                }
            }
        }
        else if(index==2){
            for(int i=0;i<std.length;i++){
                if(str.equals(std[i].addressGet())){
                    System.out.println(std[i].nameGet()+" was found!");
                    flags=true;
                    break;
                }
            }
        }
        if(!flags)
            System.out.println("Not found!");
        
    }
    
    public static void main(String[] args){
        Stduent[] std = new Stduent[4];
        std[0] =  new Stduent("Crystal0",20,'F',"185000321","Xiandao Lake0","155555@qq.com");
        std[1] =  new Stduent("Crystal1",21,'F',"185000322","Xiandao Lake1","155556@qq.com");
        std[2] =  new Stduent("Crystal2",22,'F',"185000323","Xiandao Lake2","155557@qq.com");
        std[3] =  new Stduent("Crystal3",23,'F',"185000324","Xiandao Lake3","155558@qq.com");
        stdFind(std,"Crystal0",0);
        stdFind(std,"155556@qq.com",1);
        stdFind(std,"Xiandao Lake3",2);
        stdFind(std,"Tom",0);
    }
}
   
发表于 2020-05-03 09:00:32 回复(0)
*/根据这条回答修改的代码,仅供参考
链接:https://www.nowcoder.com/questionTerminal/97ea42e4833141f48e6e751d50cbb6f7?orderByHotValue=1&mutiTagIds=570&page=2&onlyReference=false 来源:牛客网*/ import java.util.Arrays;

public class Test_1{
    public static void main(String[] args) {
        //定义一个Student[]数组保存多个Student对象作为通讯录数据。
        Student[] arr = {
                new Student("andy",15,"男","广东","123@qq.com"),
                new Student("candy",18,"女","北京","155@qq.com"),
                new Student("bob",14,"男","湖南","543@qq.com"),
                new Student("hanmeimei",21,"女","海南","554@qq.com")
        };

        System.out.println(Student.findName(arr, "wendy"));
        System.out.println(Student.findName(arr, "candy"));
        System.out.println(Student.findEmail(arr, "123@qq.com"));
        System.out.println(Student.findEmail(arr, "1234@qq.com"));
        System.out.println(Student.findAddress(arr, "广东"));
        System.out.println(Student.findAddress(arr, "陕西"));
        System.out.println(Arrays.toString(arr));

    }
}


 class Student{
    private String name;
    private int age;
    private String gender;
    private String address;
    private String email;
    
    /*构造器*/
    Student(){
    }
    
    Student( String name, int age, String gender, String address, String email ){
        this.name = name;
        this.age = age;
        this.gender = gender;
        this.address = address;
        this.email = email;
    }

    /*getter和setter*/
    public String getName(){
        return this.name;
    }

    public void setName( String name){
        this.name = name;
    }

    public int getAge(){
        return this.age;
    }

    public void setAge(int age){
        this.age = age;
    }
    public String getGender(){
        return this.gender;
    }

    public void setGender(String gender){
        this.gender = gender;
    }

    public String getAddress(){
        return this.address;
    }

    public void setAddress(String address){
        this.address = address;
    }
    public String getEmail(){
        return this.email;
    }

    public void setEmail(String email){
        this.email = email;
    }


    /*根据姓名查询学生信息*/
    public static String findName( Student[] arr, String name ){
        if(name!=null){
            for (Student student : arr) {
                if (student.name.equals(name)) {
//                    System.out.println(student.toString());
                    return student.toString();
                }
            }

        }
        return "学生信息中找不到姓名为'" + name + "'的同学!";
    }
    
     /*根据电子邮箱查询学生信息*/
    public static String findEmail( Student[] arr, String email ){
        if( email != null){
            for (Student student : arr) {
                if (student.email.equals(email)) {
                    return student.toString();
                }
            }
        }
        return "学生信息中找不到邮箱为'" + email + "'的同学!";
    }

     /*根据地址查询学生信息*/
     public static String findAddress( Student[] arr, String address ){
        if( address != null ){
            for (Student student : arr) {
                if (student.address.equals(address)) {
                    return student.toString();
                }
            }
        }
        return "学生信息中找不到地址为'" + address + "'的同学!";
    }
    /*重写toString方法*/
    public String toString(){
        return "name: " + this.name + " age: " + this.age +" gender: " + this.gender
                + " address: " + this.address + " email: " + this.email;
    }
}

编辑于 2020-09-12 23:49:12 回复(0)
链接:https://www.nowcoder.com/questionTerminal/97ea42e4833141f48e6e751d50cbb6f7?orderByHotValue=1&mutiTagIds=570&page=1&onlyReference=false
来源:牛客网
public class Student{
    private String name;
    private int age;
    private String gender;
    private String address;
    private String email;
    //构造器
    Student(){}
    Student( String name, int age, String gender, String address, String email ){
        this.name = name;
        this.age = age;
        this.gender = gender;
        this.address = address;
        this.email = email;
    }
    
    //get set
    public String getName(){
        return this.name;
    }
    
    public void setName( String name){
        this.name = name;
    }
    
    public int getAge(){
        return this.age;
    }
    
    public void setAge(int age){
        this.age = age;
    }
    public String getGender(){
        return this.gender;
    }
    
    public void setGender(String gender){
        this.gender = gender;
    }
    
    public String getAddress(){
        return this.address;
    }
    
    public void setAddress(String address){
        this.address = address;
    }
    public String getEmail(){
        return this.email;
    }
    
    public void setEmail(String email){
        this.email = email;
    }
    //定义一个Student[]数组保存多个Student对象作为通讯录数据。
    String[][] arr = {
        {"andy","15","男","广东","123@qq.com"},
        {"candy","18","女","北京","155@qq.com"},
        {"bob","14","男","湖南","543@qq.com"},
        {"hanmeimei","21","女","海南","554@qq.com"}
    }

    //通过name/email/address查询
    public String findName( String name ){
        if(name!=null){
            for(int i=0;i<=4;i++){
                if(arr[i][0].equals( name ) ){
                    print( i );
                    return "nnn";
                }
            }
            System.out.println("{name}没有符合项");
        }
        return null;
    }
    public String findEmail( String email ){
        if( email != null){
            for(int i=0;i<=4;i++){
                if(arr[i][4].equals( email) ){
                    print( i );
                    return "eee";
                }
            }
            System.out.println("{Email}没有符合项");
        }
        return null;
    }
    public String findAddress( String address ){
        if( address != null ){
            for(int i=0;i<=4;i++){
                if(arr[i][3].equals( address) ){
                    print( i );
                    return "aaa";
                }
            }
            System.out.println("{address}没有符合项");
        }
        return null;
    }
    //打印信息
    public void print( int i ){
        System.out.println("name: " + arr[i][0] + " age: " + arr[i][1] +" gender: " +arr[i][2]
        + " address: " + arr[i][3] + " email: " + arr[i][4]);
    }
}
发表于 2020-06-22 18:36:23 回复(0)