ソース
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です。

x-yが2.0999999999999996になる理由と
x-yを2.1と表示する方法をおしえてください。

x-yが 2.0999999999999996になるのなら
x+yも12.9000000000000004になると思うのですが。
もしかして有効桁数17桁で18桁目の4が丸められてるのかな。