Προς το περιεχόμενο

java read string se array


sattip

Προτεινόμενες αναρτήσεις

Δημοσ.

for(int i=0;i<answers.length-1;i++){

System.out.println("dwse "+(i+1)+" apantisi");

answers=my.readStr();

}

 

kai i class my

 

import java.io.*;

/******************************************************/

public class my

{ private static PushbackReader in;

static

{

in = new PushbackReader (new InputStreamReader

(System.in));

}

//------------------------------------------------------

// παραλείπει n χαρακτήρες

public static void skip (int n)

{ try

{ for (int i = 0;i < n;i++) in.read ();

}

catch (IOException ioe)

{ System.err.println ("Reading error");

System.exit (1);

}

} // skip

//------------------------------------------------------

// διαβάζει και επιστρέφει έναν ακέραιο τύπου byte

// ο ακέραιος τελειώνει με το χαρακτήρα separator

public static byte readByte (char separator)

{ byte number = 0;

try

{ number = Byte.parseByte(readStr (separator)); }

catch (NumberFormatException e)

{ System.err.println ("Not a valid byte");

System.exit (1);

}

return number;

} // readByte

//------------------------------------------------------

// διαβάζει και επιστρέφει έναν ακέραιο τύπου byte

// ο ακέραιος τελειώνει με το χαρακτήρα αλλαγής

// γραμμής

public static byte readByte ()

{ return readByte ('\r'); /* \n UNIX */ }

//------------------------------------------------------

// διαβάζει και επιστρέφει έναν ακέραιο τύπου short

// ο ακέραιος τελειώνει με το χαρακτήρα separator

public static short readShort (char separator)

{ short number = 0;

try

{ number = Short.parseShort(readStr (separator)); }

catch (NumberFormatException e)

{ System.err.println ("Not a valid short");

System.exit (1);

}

return number;

} // readShort

//------------------------------------------------------

// διαβάζει και επιστρέφει έναν ακέραιο τύπου short

// ο ακέραιος τελειώνει με το χαρακτήρα αλλαγής

// γραμμής

public static short readShort ()

{ return readShort ('\r'); /* \n UNIX */ }

//------------------------------------------------------

// διαβάζει και επιστρέφει έναν ακέραιο τύπου int

// ο ακέραιος τελειώνει με το χαρακτήρα separator

public static int readInt (char separator)

{ int number = 0;

try

{ number = Integer.parseInt(readStr (separator)); }

catch (NumberFormatException e)

{ System.err.println ("Not a valid integer");

System.exit (1);

}

return number;

} // readInt

//------------------------------------------------------

// διαβάζει και επιστρέφει έναν ακέραιο τύπου int

// ο ακέραιος τελειώνει με το χαρακτήρα αλλαγής

// γραμμής

public static int readInt ()

{ return readInt ('\r'); /* \n UNIX */ }

//------------------------------------------------------

// διαβάζει και επιστρέφει έναν ακέραιο τύπου long

// ο ακέραιος τελειώνει με το χαρακτήρα separator

public static long readLong (char separator)

{ long number = 0l;

String s = readStr (separator);

try

{ if (s.toLowerCase().endsWith("l"))

s = s.substring(0, s.length()-1);

number = Long.parseLong(s);

}

catch (NumberFormatException e)

{ System.err.println ("Not a valid long");

System.exit (1);

}

return number;

} // readLong

//------------------------------------------------------

// διαβάζει και επιστρέφει έναν ακέραιο τύπου long

// ο ακέραιος τελειώνει με το χαρακτήρα αλλαγής

// γραμμής

public static long readLong ()

{ return readLong ('\r'); /* \n UNIX */ }

//------------------------------------------------------

// διαβάζει και επιστρέφει έναν πραγματικό αριθμό

// τύπου float

// ο αριθμός τελειώνει με το χαρακτήρα separator

public static float readFloat (char separator)

{ float number = 0.0f;

try

{ number = Float.parseFloat(readStr (separator)); }

catch (NumberFormatException e)

{ System.err.println ("Not a valid float");

System.exit (1);

}

return number;

} // readFloat

//------------------------------------------------------

// διαβάζει και επιστρέφει έναν πραγματικό αριθμό

// τύπου float

// ο αριθμός τελειώνει με το χαρακτήρα αλλαγής

// γραμμής

public static float readFloat ()

{ return readFloat ('\r'); /* \n UNIX */ }

//------------------------------------------------------

// διαβάζει και επιστρέφει έναν πραγματικό αριθμό

// τύπου double

// ο αριθμός τελειώνει με το χαρακτήρα separator

public static double readDouble (char separator)

{ double number = 0.0;

try

{ return Double.parseDouble (readStr (separator)); }

catch (NumberFormatException e)

{ System.err.println ("Not a valid double");

System.exit (1);

}

return number;

} // readDouble

//------------------------------------------------------

// διαβάζει και επιστρέφει έναν πραγματικό αριθμό

// τύπου double

// ο αριθμός τελειώνει με το χαρακτήρα αλλαγής

// γραμμής

public static double readDouble ()

{ return readDouble ('\r'); /* \n UNIX */ }

//------------------------------------------------------

// διαβάζει και επιστρέφει μια τιμή τύπου boolean

// η τιμή αυτή τελειώνει με το χαρακτήρα separator

public static boolean readBoolean (char separator)

{ String bool = readStr (separator);

if (!bool.equals("true") && !bool.equals("false"))

{ System.err.println ("Not a valid boolean");

System.exit (1);

}

if (bool.equals("true"))

return true;

return false;

} // readBoolean

//------------------------------------------------------

// διαβάζει και επιστρέφει μια τιμή τύπου boolean

// η τιμή αυτή τελειώνει με το χαρακτήρα αλλαγής

// γραμμής

public static boolean readBoolean ()

{ return readBoolean ('\r'); /* \n UNIX */ }

//------------------------------------------------------

// διαβάζει και επιστρέφει έναν χαρακτήρα

public static char readChar ()

{ char character = '\0';

try

{ character = (char) in.read(); }

catch (IOException ioe)

{ System.err.println ("Reading error");

System.exit (1);

}

return character;

} // readChar

//------------------------------------------------------

// διαβάζει και επιστρέφει μια συμβολοσειρά που

// τελειώνει με το χαρακτήρα separator

public static String readStr (char separator)

{ StringBuffer string = new StringBuffer ();

try

{ int ch = in.read();

while (ch != separator)

{ string.append ((char)ch);

ch = in.read ();

}

in.unread (ch);

}

catch (IOException ioe)

{ System.err.println ("Reading error");

System.exit (1);

}

return new String (string);

} // readStr

//------------------------------------------------------

// διαβάζει και επιστρέφει μια συμβολοσειρά που

// τελειώνει με το χαρακτήρα αλλαγής γραμμής

public static String readStr ()

{ return readStr ('\r'); /* \n UNIX */ }

//------------------------------------------------------

private static long seed = 922337203685477580L;

// παράγει τον επόμενο ψευδοτυχαίο αριθμό τύπου

// double που βρίσκεται στην περιοχή [0,1)

// βλ. Παράδ. 12.4

public double random()

{ final long m /* μέτρο */ = 922337203685477580L,

c /* αύξηση */ = 925l,

a /* πολλαπλασιαστής */ = 25173l /* ή 16453l */;

seed = (a * seed + c) % m;

return (double) seed / m;

} // random

} // my

/******************************************************

/

 

 

 

 

το προβλημα ειναι οτι εμφανιζει διαδοχικα απο την στιγμη που εισαγω την πρωτη τιμη "dwse ι apantisi" χωρις να μου επιτρεπει να ξαναεκχωρισω τιμη.thanks

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...