Vi har skrivit hela koden men fattar bara inte vad som är felet. Man väljer hur stor telefonbok det ska vara, den behöver inte bara ha två platser.
Här kommer hela koden:
import java.util.Scanner;
public class inlamning6 {
private static int j = 0;
private static int i;
private static String ett = new String("1. Lägg in person");
private static String tva = new String("2. Sök namn");
private static String tre = new String("3. Sök nummer");
private static String fyra = new String("4. Sortera telefonboken");
private static String fem = new String("5. Skriv ut telefonboken");
private static String sex = new String("6. Avsluta");
//private static String[]name = new String*;
//private static int[]number = new int*;
public static void main(String[] args)
{
System.out.println("Skriv hur stor telefonbok du vill göra");
Scanner in = new Scanner(System.in);
i = in.nextInt();
String[]name = new String*;
String[]number = new String*;
int val = 0;
while ( val != -1 ){ //loopen ska hålla på tills avslutning eller ogiltigt svar
switch(meny()){
case 1: System.out.println("Ditt val: " + ett);
System.out.println("Skriv namn och tryck enter och sedan nummer och tryck enter");
String namen = in.next();
String numbern = in.next();
addInfo(namen, numbern, name, number);
break;
case 2: System.out.println("Ditt val: " + tva);
System.out.println("Skriv in namn att söka efter");
String namen2 = in.next();
getNameIndex(namen2, name, number);
break;
case 3: System.out.println("Ditt val: " + tre);
String numbern2 = in.next();
getNumberIndex(numbern2, number, name);
break;
case 4: System.out.println("Ditt val: " + fyra);
sort(name,number);
break;
case 5: System.out.println("Ditt val: " + fem);
print(name,number);
break;
case 6: System.out.println("Ditt val: " + sex);
val = -1;
break;
default:System.out.println("Ogiltigt val, tjänsten avslutas");
val = -1;
break;
} //switch slut
} // while slut
}
public static int meny(){
int val = 0;
Scanner in = new Scanner(System.in);
System.out.println("Gör val, ange siffran:");
System.out.println(ett);
System.out.println(tva);
System.out.println(tre);
System.out.println(fyra);
System.out.println(fem);
System.out.println(sex);
val = in.nextInt();
return val;
}
public static void addInfo(String namen, String numbern, String \[\] name, String \[\] number){
name\[j\]=namen;
number\[j\]=numbern;
j++;
}
public static int getNameIndex(String namen, String [] name, String [] number){
for(int k=0; k\<name.length; k++){
if(name\[k\].compareTo(namen) == 0){
System.out.println("Nummer " + number\[k\]);
break;
}
}
int minus = -1;
return minus;
}
public static int getNumberIndex(String numbern, String [] number, String [] name){
for(int k=0; k\<i; k++){
if(number\[k\].compareTo(numbern) == 0)
{
System.out.println("Namn " + name[k] );
break;
}
}
int minus = -1;
return minus;
}
public static void print(String \[\] name, String \[\] number){
for(int k = 0; k\<i; k++){
System.out.println(name\[k\] +" "+ number\[k\]);
}
}
public static void sort(String \[\] name, String \[\] number){
int j = 0;
while(j\<name.length){
for(int i=0; i\<name.length-1; i++){
if(name*.compareTo(name\[i+1\]) \> 0 ){
String temp = name*;
name *\= name\[i+1\];
name\[i+1\] = temp;
String tempen = number*;
number *\= number\[i+1\];
number\[i+1\] = tempen;
}
}
j++;
}
}
}*********