int n = scanner.nextInt();if (n < 0) n = n - 2 * n;
判断有问题,如果n<0 才执行下面的语句
逻辑上没有问题,我不确定你是否是因为没创建scanner对象Scanner scanner=new Scanner(System.in);