小工具      在线工具  汉语词典  css  js  c++  java

Java入门——编程案例(1)

Java基础,java,jvm,开发语言 额外说明

收录于:196天前

案例01:买飞机票

  • 机票价格按照淡季旺季,头等舱和经济舱收费,输入机票原价,月份和头等舱或者经济舱。
  • 机票最终优惠价格的计算方案如下:旺季(5-10月)头等舱9折,经济舱8.5折,淡季(11月到来年4月)头等舱7折,经济舱6.5折。
import java.util.Scanner;
public class Demo01 {
    public static void main(String[] args) {
        //1.输入机票要选择的原价,月份,舱位类型
        Scanner sc = new Scanner(System.in);
        System.out.print("请您输入机票的原价:");
        double money = sc.nextInt();
        System.out.print("请您输入机票的月份(1-12):");
        int month = sc.nextInt();
        System.out.print("请您输入要选择的舱位类型:");
        String type = sc.next();
        System.out.println("您优惠后的价格为:" + calc(money, month, type));
    }
    //2.定义新方法计算机票最终优惠价格
    public static double calc(double money,int month,String type){
        if (month >= 5 && month <= 10){
            //旺季
            switch (type){
                case "头等舱":
                    money *= 0.9;
                    break;
                case "经济舱":
                    money *= 0.85;
                    break;
                default:
                    System.out.println("您输入的舱位类型有误。");
                    money = -1;
            }
        }else if (month == 11 || month == 12 || month >= 1 && month <= 4){
            //淡季
            switch (type){
                case "头等舱":
                    money *= 0.7;
                    break;
                case "经济舱":
                    money *= 0.65;
                    break;
                default:
                    System.out.println("您输入的舱位类型有误。");
                    money = -1;
            }
        }else {
            System.out.println("sorry,您输入月份有误……");
            money = -1;
        }
        return money;
    }
}

 

案例02:找素数

  •  素数:如果除了1和它本身以外,不能被其他正整数整除,就叫素数。
  • 判断101-200之间有多少个素数,并输出所有素数。
//判断规则:从2开始遍历到该数的一半的数据,看是否有数据可以整除,有就不是素数,没有就是素数
//其实从2到开平方的那个数就可以判断是不是素数了,这里使用的是2到一半的方法判断是不是素数
public class Demo02 {
    public static void main(String[] args) {
        for (int i = 101; i < 200; i++) {
            boolean flag = true;//信号位:标记,一开始认为当前数据是素数
            //这里使用j<i/2,而不是<=,因为如果i/2可以被整除证明这个数是素数了就不需要用等号了
            for (int j = 2; j < i/2 ; j++) {
                //不是素数
                if (i % j == 0){
                    flag = false;
                    break;
                }
            }
            //判断是素数,再进行输出
            if (flag){
                System.out.println("以下是101-200之间的素数:");
                System.out.print(i + "\t");
            }
        }
    }
}

案例03:验证码

  • 定义方法实现随机产生一个5位的验证码,每位可能是数字,大写字母,小写字母。
import java.util.Random;
public class Demo03 {
    public static void main(String[] args) {
        System.out.println("随机生成的5位验证码为:" + createCode(5));
    }

    public static String createCode(int n){
        //3.定义一个字符串记录随机生成的字符
        String code = "";
        Random r = new Random();
        //1.for循环用于循环n次,依次生成随机字符
        for (int i = 0; i < n; i++) {
            //2.随机生成带有数字,英文大写,英文小写的字符串;
            //这里使用Random()方法生成随机字符串,0,1,2分别代表英文大写,英文小写,数字,从而实现随机生成验证码
            int type = r.nextInt(3);
            switch (type){
                case 0://英文大写(A:65~Z:(65+25))-->(bound:26)+65
                    char ch = (char) (r.nextInt(26)+65);
                    code += ch;
                    break;
                case 1://小写字符(a:97~z:(97+25))-->(bound:26)+97
                    char ch1 = (char)(r.nextInt(26)+97);
                    code += ch1;
                    break;
                case 2://数字(0-9)-->(bound:10)
                    code += r.nextInt(10);
                    break;
            }
        }
        return code;
    }
}

 

 

. . .

相关推荐

额外说明

static的详细使用方法及例题

前言: 作者简介:爱吃大白菜1132 人生格言:纸上得来终觉浅,绝知此事要躬行   如果文章知识点有错误的地方不吝赐教,和大家一起学习,一起进步!   如果觉得博主文章还不错的话,希望三连支持! 目录   1. static修饰变量    a. 函数中局

额外说明

docker-compose部署springboot项目

小伙伴们,你们好呀!我是老寇!废话不多说,跟我一起部署老寇云(亲测有效) 目录 一、提前条件 二、制作镜像 三、部署微服务 一、提前条件 1.云服务器:CentOS 8 2.微服务项目:已打包好jar包 3.jdk环境:免积分下载-jdk-linux-1

额外说明

力扣(LeetCode)算法_C++—— 两个数组的交集

给定两个数组 nums1 和 nums2 ,返回 它们的交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 。 示例 1: 输入:nums1 = [1,2,2,1], nums2 = [2,2] 输出:[2] 示例 2: 输入:

额外说明

Java实现八大排序

-“汲取知识,分享快乐,让生命不留遗憾”- -作者:不能再留遗憾了- -专栏:Java学习- -该文章主要内容:直接插入排序、希尔排序、选择排序、堆排序、冒泡排序、快速排序(递归、非递归)、归并排序(递归、非递归) 文章目录 前言 什么是排序、稳定性 排

额外说明

Spring AOP(aop) 详解

     Spring有两大核心,一个是IOC,一个是AOP。IOC比较好理解,控制反转,也就是将bean的控制权交给Spring来管理,让对象之间解耦。但是对于AOP,只是听老师说功能非常强大,却一直没有领略到其强大之处。却是被通知,切入点,切面,切点

额外说明

course2610_lab19虚存映射mmap()及读写性能探究(下)

回顾,内存映射 首先,“映射”这个词,就和数学课上说的“一一映射”是一个意思,就是建立一种一一对应关系,在这里主要是只 硬盘上文件 的位置与进程 逻辑地址空间 中一块大小相同的区域之间的一一对应,如图1中过程1所示。这种对应关系纯属是逻辑上的概念,物理上

额外说明

【PHP面试题09】PHP中单引号’与双引号” 区别

文章目录 一、概览 二、区别 2.1 双引号支持变量解析 2.2 双引号支持转义符,单引号不支持 2.3 双引号比单引号更占用内存 2.4 单引号比双引号快 总结 一、概览 本文已收录于PHP全栈系列专栏:PHP面试专区。 计划将全覆盖PHP开发领域所有

额外说明

[Web Chart系列之五] 图形布局-Circle Layout 之实现

 前言关于Circle Layout 的基本介绍, 可以参考: [Web Chart系列之三] 图形布局-Layout 布局的现实使用状况 这里使用这种布局来布局特定对象的关联。 这里的这些对象类似于物料的BOM表。(简单举个例子,一个自行车,两个轮子,

额外说明

压力测试工具集

工具 相关网址 LoadRunner http://www.mercuryinteractive.com/products/loadrunner/ SilkPerformer http://www.segue.com/products/load-s ..

额外说明

【稳定扩散】安装过程中常见错误的解决方法

转载自:https://openai.wiki/stable-diffusion-error.html 如何查看报错 你在安装过程中可能经常会遇到各种问题,但是一堆不熟悉的英文和各种错误,你可能常常会不知所措。下面我就教大家如何查看错误报告。 (base

ads via 小工具