BlueAndBug 2020-01-03 20:47 采纳率: 0%
浏览 133

为什么money换成String可以 ,换成int就会出错?

对于输入的机制还有很多不明白的地方,希望有大佬指点一下
public class Main {
public static void main(String[] args) {

    Scanner s = new Scanner(System.in);
    System.out.println("请输入地名:");
    String location = s.nextLine();
    System.out.println("请输入公司类型:");
    String companyCategory = s.nextLine();
    System.out.println("请输入公司名称:");
    String companyName = s.nextLine();
    System.out.println("请输入老板名称:");
    String bossName = s.nextLine();
    System.out.println("请输入金额:");
    int money = s.nextInt();
    System.out.println("请输入产品:");
    String product = s.nextLine();
    System.out.println("请输入价格计量单位:");
    String unit = s.nextLine();

    String model = "%s最大%s%s倒闭了,王八蛋老板%s吃喝嫖赌,欠下了%s个亿,\r\n"
            + "带着他的小姨子跑了!我们没有办法,拿着%s抵工资!原价都是一%s多、两%s多、三%s多的%s,\r\n"
            + "现在全部只卖二十块,统统只要二十块!%s王八蛋,你不是人!我们辛辛苦苦给你干了大半年,\r\n"
            + "你不发工资,你还我血汗钱,还我血汗钱!";       
    System.out.format(model, location,companyCategory,companyName,bossName,money,product,unit,unit,unit,product,bossName);

}

}

  • 写回答

1条回答 默认 最新

  • threenewbee 2020-01-03 22:03
    关注

    两%s多
    这里换成%d是数字,%s是string
    而且
    int money = s.nextInt();
    这里你在运行输入的时候,必须输入合法的整数,不能是“1亿”之类包含其他文字的。

    问题解决的话,请点下采纳

    评论

报告相同问题?

悬赏问题

  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)
  • ¥20 matlab yalmip kkt 双层优化问题
  • ¥15 如何在3D高斯飞溅的渲染的场景中获得一个可控的旋转物体