仅向阵列列表中的某些人添加电话号码

时间:2015-01-12 12:58:34

标签: java arrays

我需要管理一家咨询公司。公司需要添加可分配给多个人的任务(läggtilluppdrag)。当我尝试打印任务列表(listauppdrag)时,当任务仅分配给一个人时,它可以正常工作,但是当多个人共享同一个任务时,它只打印出我在任务上添加的最后一个人。我如何打印它们?

public static void läggTillUppdrag(){
    Scanner sc= new Scanner(System.in); 
    System.out.print("Ange uppdrags namn:");
    String namn= sc.nextLine(); 
    System.out.print("Ange uppdrags beskrivning:");
    String beskrivning= sc.nextLine();
    System.out.print("Ange datum:");
    int datum= sc.nextInt();
    System.out.print("Ange uppdrags timmar:");
    int timmar= sc.nextInt();
    boolean uppfyllt=false;
    Scanner sc2= new Scanner(System.in);
    System.out.print("Hur många kunder delar på uppdraget?");
    int nummer= sc2.nextInt();
    int totalprocent=0;
    boolean finns=false;
    for (int i=0;i<nummer;i++){
        sc2.nextLine();
        System.out.print("Ange kundens namn:");
        String Knamn= sc2.nextLine();
        for(int h=0;h<KundLista.size();h++){
            if(KundLista.get(h).getNamn().equals(Knamn)){
                finns=true;
                System.out.print("Hur många procent ska "+Knamn+" betala?");
                int procent= sc2.nextInt();
                double total=100.0;
                double Summa=((timmar*9999)*procent)/total;
                System.out.println("Kunden ska betala "+Summa+" kr");
                totalprocent=totalprocent+procent;
                if(totalprocent<100){
                System.out.println("Totalbeloppet är för litet!");
            }
                else if(totalprocent==100){
                    uppfyllt=true;
                    Uppdrag NyUppdrag=new Uppdrag(namn,beskrivning,datum,timmar,Knamn,procent);
                    UppdragLista.add(NyUppdrag);
                }
            }
        }
    }

}

public static void listaUppdrag(){
    for(int h=0;h<UppdragLista.size();h++){
        System.out.println(UppdragLista.get(h));
            }
}


package konsultfirma;

public class Uppdrag {

    private String uppdragsNamn;
    private String uppdragsBeskrivning;
    private int uppdragsDatum;
    private int uppdragsTimmar;
    private String kundensNamn; 
    private int kundensProcent;

    Uppdrag(String namn, String beskrivning, int datum, int timmar, String Knamn, int procent){
        uppdragsNamn = namn;
        uppdragsBeskrivning = beskrivning;
        uppdragsDatum = datum;
        uppdragsTimmar = timmar;
        kundensNamn=Knamn;
        kundensProcent=procent;
    }


    public String toString(){
        return "Namn: "+uppdragsNamn+", Beskrivning: " + uppdragsBeskrivning + ", datum: " + uppdragsDatum +", antal timmar: " + uppdragsTimmar+", kundens namn: "+kundensNamn+", kundens procent: "+kundensProcent;
    }

    public String getuppdragsNamn(){
        return uppdragsNamn;
    }
}

1 个答案:

答案 0 :(得分:0)

你应该使用ArrayList。

ArrayList<Uppdrag> userList = new ArrayList();
//Then start adding new elements.
userList.add(new Uppdrag(namn,beskrivning,datum,timmar,Knamn,procent));
//To return all the elements you need to run a loop:
for(int i =0;i<userList.size();i++){
    System.out.println("Namn: "+userList.get(i).uppdragsNamn+", Beskrivning: " 
    + userList.get(i).uppdragsBeskrivning + ", datum: " + userList.get(i).uppdragsDatum +",
    antal timmar: " + userList.get(i).uppdragsTimmar+", kundens namn: 
    "+userList.get(i).kundensNamn+", kundens procent: "+userList.get(i).kundensProcent);
}