Your task is to read a file containing arithmetic instructions such as Each inst
ID: 3759747 • Letter: Y
Question
Your task is to read a file containing arithmetic instructions such as
Each instruction contains an integer, an operator (+, -, or *), and another integer.
Return an array list of the results. If there is any error, throw an IOException.
Complete the following file:
Arithmetic.java
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Scanner;
public class Arithmetic
{
/**
This class reads a file containing arithmetic expressions and returns an
array list of the results.
@param filename the file name
@return a list of results
*/
public static ArrayList<Integer> read(String filename) throws IOException
{
. . .
}
// This method checks your work. Do not touch it.
public static String check(String filename)
{
try
{
return read(filename).toString();
}
catch (IOException ex)
{
return "I/O exception thrown";
}
catch (Exception ex)
{
return ex.getClass().getName();
}
}
}
Explanation / Answer
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Scanner;
public class Arithmetic
{
/**
This class reads a file containing arithmetic expressions and returns an
array list of the results.
@param filename the file name
@return a list of results
*/
public static ArrayList<Integer> read(String filename) throws IOException
{
ArrayList<Integer> list = new ArrayList<>();
Scanner scanner = new Scanner(new File(filename));
while(scanner.hasNextInt()){
list.add(scanner.nextInt());
}
return list;
}
// This method checks your work. Do not touch it.
public static String check(String filename)
{
try
{
return read(filename).toString();
}
catch (IOException ex)
{
return "I/O exception thrown";
}
catch (Exception ex)
{
return ex.getClass().getName();
}
}
}
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.