wprowadzanie danych










 


Wprowadzanie danych


 
Napisy przeznaczone tylko do czytania
Java przechowuje w obiektach typu String. Aby móc modyfikować napis, trzeba
użyć obiektu typu StringBuffer. Oznacza to, że gdy obiekt klasy String
został raz utworzony, nie można go już zmieniać.  Natomiast obiekt
klasy StringBuffer może być wielokrotnie modyfikowany. Do czytania z klawiatury
jest używany właśnie StringBuffer. Jedną z prostszych metod czytania z
klawiatury jest czytanie znak po znaku korzystając z metody appendChar(),
należącej do klasy StringBuffer i dodawanie ich do bufora. Aby uzyskać
obiekt typu String z bufora typu StringBuffer, należy zastosować metodę
toString().
 
while (( c = (char) System.in.read())
!= '\n') 
            
strng.append(c); 
Przykład:
 
class
waga
{
   
public void main ( String args[] )
   
{
       
char c;
       
double w;
       
StringBuffer strng = new StringBuffer();
       
System.out.println("Ile ważysz na Ziemi ?");
       
try
       
{
           
while (( c = (char) System.in.read()) != '\n')
               
strng.append(c);
           
w = Double.valueOf(strng.toString()).doubleValue();
       
}
       
catch (java.io.IOException e)
       
{
           
w = 0.0;
       
}
       
w *= .166;
       
System.out.println("Na księżycu twoja waga wynosi" + w);
   
}
}
 
Można też wykorzystać
obiekt klasy DataInputStream zdefiniowanej w pakiecie java.io. Obiekt ten
zwraca napis w postaci obiektu typu String., zwracający wiersz wpisany
przez użytkownika, ale bez kończącego go znaku końca wiersza.
 
   
DataInputStream stream = new DataInputStream ( System.in );
   
String strng;
   
double value;
 
   
strng = stream.readLine();
   
value = Double.valueof ( strng ).doubleValue();  // konwersja do double
 
Jeśli zdarzy
się coś nieoczekiwanego w trakcie wykonywania programu stream.readline
może zgłosić wyjątek, więc trzeba być przygotowanym do obsłużenia go:
   
try
   
{
       
strng = stream.readLine();
   
}
   
catch  ( java.io.IOException e )
   
{
      
strng = 0.0;
   
}
Podobnie przy
wykonywaniu konwersji napisu do postaci liczby, trzeba być przygotowanym
do obsługi wyjątku oznaczającego, że były kłopoty z konwersją:
   
try
   
{
       
value = Double.valueof ( strng ).doubleValue();
   
}
   
catch ( java.lanag.NumberFormatException )
   
{
       
value = 0.0;
   
}







Wyszukiwarka

Podobne podstrony:
5 Wprowadzanie danych rastrowych i wektorowych 2012
4 Wprowadzenie danych rastrowych i wektorowych
Wprowadzenie do baz danych
wprowadzenie do baz danych
Komp przetw danych Wprowadzenie do MATLABa 1
bazy danych maski wprowadzania
Zestaw 1 Wprowadzenie do relacyjnych baz danych
bazy danych wprowadzenie
BD Wykˆad 1 Wprowadzenie do baz danych
Komp przetw danych Wprowadzenie do MATLABa 2
Wprowadzenie do baz danych
bazy danych formaty i maski wprowadzania
Wprowadzenie do systemów baz danych

więcej podobnych podstron