ソース:
import java.io.*;

public class AddSub {
public static void main(String[] args) {

double x=7.5;
double y=5.4;
double z;

z=x+y;
System.out.println("x+yは"+z+"です。");

z=x-y;
System.out.println("x-yは"+z+"です。");
}
}

実行結果:
x+yは12.9です。
x-yは2.0999999999999996です。

なぜ上手くいかないのか理由と解決方法を教えてください。