I've been using eclipse and OnlineGDB for my Java works. I recently started to use IntelliJ IDEA and I'm enjoying this a lot. But i tried to work one of my simple projects in IntelliJ IDEA about file operations. But it gives me an error during running. I'm experiencing no problem in OnlineGDB with the exact same codes.
import java.util.InputMismatchException;
import java.util.Scanner;
import java.io.File;
import java.io.PrintWriter;
public class Main
{
static void createFile() throws Exception
{
PrintWriter output = new PrintWriter(new File("input.txt"));
output.print("2.5");
output.close();
}
public static void main(String[] args) throws Exception
{
Scanner input = new Scanner(System.in);
Circle[] circles = new Circle[3];
circles[0] = new Circle(1.0);
System.out.print("Radius of the second circle => ");
circles[1] = new Circle(input.nextFloat());
input.close();
createFile();
input = new Scanner(new File("input.txt"));
circles[2] = new Circle(input.nextFloat());
input.close();
for (int i = 0; i<=circles.length-1; i++)
{
System.out.println( "c(" + i + ") radius = " + circles[i].getRadius()
+ " area = " + circles[i].area() );
}
float total = 0;
for (int i = 0; i<3; i++)
{
total +=circles[i].getRadius();
}
System.out.println("Total radius of the circles = " + total );
total = 0;
for (int i = 0; i<3; i++)
{
total+= circles[i].area();
}
System.out.println("Total area of the circles = " + total);
}
}
public class Circle
{
private double radius;
public Circle (double radius)
{
this.radius = radius;
}
public double getRadius()
{
return radius;
}
public double area()
{
return(Math.PI * radius * radius);
}
}
It gives me the "java.util.InputMismatchException" error during these lines:
System.out.print("Radius of the second circle => ");
circles[1] = new Circle(input.nextFloat());
input.close();