Top
Previous Next
Java's Object Orientation, I/O CS 161 - Java

InputExample.java

Source: examples/InputExample.java



/** InputExample - demonstrate interpreting numeric values from
** input from console (System.in)
**/
 
import java.io.IOException;
 
public class InputExample {
 
public static void main( String[] args) {
InputExample example = new InputExample();
 
System.out.print("enter int values, end with end of file character:");
System.out.flush();
 
int sum = example.sumIntValues();
System.out.println("Sum is " + sum);
}
 
public int sumIntValues() {
byte input[] = new byte[80];
int bytesRead ;
String inputString = null;
String trimmedString = null;
int intValue = 0;
int sum = 0;
 
try {
while (true) {
// Read input bytes and create a String object from them
bytesRead = System.in.read(input);
if (bytesRead < 0) // read returns -1 of no more is available
break;
 
inputString = new String(input, 0, bytesRead);
 
// Remove any whitespace from either end
trimmedString = inputString.trim();
 
// After removing whitespace check if the string has zero length
if (trimmedString.length() == 0)
continue; // try again
 
// Try to convert what is left to an integer value
// Note that this doesn't check for non-digits
 
intValue = Integer.parseInt(trimmedString);
sum += intValue;
}
}
catch (IOException e) {
System.out.println("whoops, caught IO Exception");
}
return sum;
}
}

Question: What happens if the user enters non-digit characters?


Top
Previous Next
jwd