自学Java之基础篇——使用 if 和 switch 来告诉你到底该不该换手机

本文介绍了一种通过编程方式分析手机购买策略的方法,对比了二手市场折旧和手机专卖店以旧换新两种方案,帮助用户根据旧手机价格选择最经济的购机途径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

需求:
我想买 7899RMB 的手机;
有一下两种套餐 1 ,2

  1. 二手市场按原价的 20 % 折旧" ;
  2. 手机专卖店以旧换新的优惠,新手机就能够打8折优惠"

输入我的旧手机价格,看看哪个适合我

分析:

  1. 用 if- else 来筛错,然后再用switch来输出手机价格,(后来的学习发现用 break 更好);
  2. 考虑到实际问题,给用户1,2,3 选项(选项3为比较1,2两个购买策略);

在这里插入图片描述

package com.itheima;

import java.util.Scanner;

public class practice008 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        System.out.print("当前手机价格为 7988 RMB");

        System.out.print("请输入你的旧手机价格");
        System.out.println();

        float price = sc.nextInt();
        float cost = 0;
        int q = 0;


        if (price >= 10000 | price <= 1500) {
            System.out.print("你TM换什么手机?!");

        } else {
            System.out.println();
            System.out.println("有一下两种套餐 1 ,2 ");
            System.out.println("A. 二手市场按原价的 20 % 折旧");
            System.out.println("B. 手机专卖店以旧换新的优惠,新手机就能够打8折优惠");

            System.out.println();
            System.out.println("请输入你想要的套餐 1 或者 2 ");
            System.out.println("如果都想比较,请输入 3 ");

            q = sc.nextInt();
            switch (q) {
                case 1:
                    cost = (float) (7988 - price * 0.2);
                    System.out.println("您的最终价格为" + cost + "Rmb");
                    break;

                case 2:
                    cost = (float) (7988 * 0.8);
                    System.out.println("您的最终价格为" + cost + " Rmb");
                    break;

                case 3:
                    float cost2 =  (7988.0F  * 0.8F);
                    float cost1 = (float) (7988 - price * 0.2);
                    int Final = cost1 <= cost2 ? 1 : 2;

                    System.out.println();

                    System.out.println("1套餐的最终价格为" + cost1 + " Rmb");
                    System.out.println("2套餐的最终价格为" + cost2 + " Rmb");

                    System.out.println();
                    System.out.println("最好使用" + Final + "套餐");

                    break;

                default:
                    System.out.println("错误,请重新输入");
                    break;
            }
        }
    }
}

结果:
在这里插入图片描述
果然现在我不配拥有新手机------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值