【Java】『蓝桥杯』10道编程题及答案(一)

news2024/9/22 4:21:54

系列文章

【Java】『蓝桥杯』10道编程题及答案(一)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/130223115

【Java】『蓝桥杯』10道编程题及答案(二)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/130304773

【Java】『蓝桥杯』10道编程题及答案(三)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/130305068


文章目录

  • 系列文章
  • 前言
  • 一、题目
    • 1.1 【程序1】
    • 1.2 【程序2】
    • 1.3 【程序3】
    • 1.4 【程序4】
    • 1.5 【程序5】
    • 1.6 【程序6】
    • 1.7 【程序7】
    • 1.8 【程序8】
    • 1.9 【程序9】
    • 1.10 【程序10】
  • 二、答案
    • 2.1 【程序1】
    • 2.2 【程序2】
    • 2.3 【程序3】
    • 2.4 【程序4】
    • 2.5 【程序5】
    • 2.6 【程序6】
    • 2.7 【程序7】
    • 2.8 【程序8】
    • 2.9 【程序9】
    • 2.10 【程序10】


前言

我能抽象出整个世界,但是我不能抽象你。 想让你成为私有常量,这样外部函数就无法访问你。 又想让你成为全局常量,这样在我的整个生命周期都可以调用你。 可惜世上没有这样的常量,我也无法定义你,因为你在我心中是那么的具体。

哈喽大家好,本专栏为【项目实战】专栏,有别于【底层库】专栏,我们可以发现增加 了『问题描述』、『项目展示』章节,十分符合项目开发流程,让读者更加清楚项目解决的问题、以及产品能够达到的效果。本专栏收纳项目开发过程的解决方案,是我项目开发相对成熟、可靠方法的提炼,我将这些问题的解决思路梳理,撰写本文分享给大家,大家遇到类似问题,可按本文方案处理。

本专栏会持续更新,不断完善,专栏文章关联性较弱(文章之间依赖性较弱,没有阅读顺序)。大家有任何问题,可以私信我。如果您对本专栏感兴趣,欢迎关注吧,我将带你用最简洁的代码,实现复杂的功能。

蓝桥杯10道经典编程题及答案(一)
在这里插入图片描述


一、题目

1.1 【程序1】

【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21…

1.2 【程序2】

【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。
1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。

1.3 【程序3】

【程序3】 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。

1.4 【程序4】

【程序4】 题目:将一个正整数分解质因数。例如:输入90,打印出90=233*5。
程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:
(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。
(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。

1.5 【程序5】

【程序5】 题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。
1.程序分析:(a>b)?a:b这是条件运算符的基本例子。

1.6 【程序6】

【程序6】 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
1.程序分析:利用辗除法。

1.7 【程序7】

【程序7】 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
1.程序分析:利用while语句,条件为输入的字符不为’\n’.

1.8 【程序8】

【程序8】题目:求s=a+aa+aaa+aaaa+aa…a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
1.程序分析:关键是计算出每一项的值。

1.9 【程序9】

【程序9】题目:一个数如果恰好等于它的因子之和,这个数就称为"完全数"。例如6=1+2+3.编程 找出1000以内的所有完全数。

1.10 【程序10】

【程序10】 题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高?


二、答案

2.1 【程序1】

import java.util.Scanner;
public class RabbitsQuit {
	/**
	 * 【程序1】 题目:古典问题:有一对兔子,从出生后第3个月 起每个月都生一对兔子,小兔子长到第三个月后每个月又生 一
	 * 对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21....
	 */
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		RabbitsQuit rq = new RabbitsQuit();
		System.out.println("请输入一个整数:");
		int n = sc.nextInt();
		for (int i = 0; i < n; i++) {
			System.out.println("第" + (i + 1) + "个月:" + rq.calc(i + 1));
		}
	}
	private int calc(int x) {
		if (x == 1 || x == 2)
			return 1;
		else
			return calc(x - 2) + calc(x - 1);
	}
}

2.2 【程序2】

import java.util.Scanner;
public class RabbitsQuit {
	/**
	 * 【程序1】 题目:古典问题:有一对兔子,从出生后第3个月 起每个月都生一对兔子,小兔子长到第三个月后每个月又生 一
	 * 对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21....
	 */
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		RabbitsQuit rq = new RabbitsQuit();
		System.out.println("请输入一个整数:");
		int n = sc.nextInt();
		for (int i = 0; i < n; i++) {
			System.out.println("第" + (i + 1) + "个月:" + rq.calc(i + 1));
		}
	}
	private int calc(int x) {
		if (x == 1 || x == 2)
			return 1;
		else
			return calc(x - 2) + calc(x - 1);
	}
}
法二:
import java.util.Vector;
public class PrimeNumber2 {
	/**
	 * 【程序2】 题目:判断101-200之间有多少个素数,并输出所有 素数。 1.程序分析:判断素数的方法:用一个数分别去除2到sqrt
	 * (这个数),如果能被整除, 则表明此数不是素数,反之是素数。
	 */
	@SuppressWarnings({ "unchecked", "rawtypes" })
	public static void main(String[] args) {
		Vector v = new Vector();// 使用向量来装素数
		int i, j, ct = 0;
		for (i = 101; i < 200; i++) {
			for (j = 2; j < i; j++) {
				if (i % j == 0) {
					break;
				}
			}
			if (i == j) {
				v.add(i);
				ct++;
			}
		}
		System.out.println("101~200之间一共有:" + ct + "个素数。");
		System.out.println("===============================");
		System.out.println(v.toString().substring(1,v.toString().length()-1));
	}
}

2.3 【程序3】

public class DaffodilsNumber {
	/**
	 * 【程序3】 题目:打印出所有的"水仙花数",所谓"水仙花数"是指 一个三位数,其各位数字立方和等于该数本身。例如:
	 * 153是一个"水仙花数",因为153=1的三次方+5的三次方 +3的三次方。 1.程序分析:
	 * 利用for循环控制100-999个数,每个数分解出个位, 十位,百位。
	 */
	public static void main(String[] args) {
		DaffodilNumber dn;
		int ct = 0;
		for (int i = 100; i < 1000; i++) {
			dn = new DaffodilNumber(i);
			if (dn.isDaffodilNumber()) {
				ct++;
				System.out.println(i + " = " + dn);
			}
		}
		System.out.println("==============================");
		System.out.println("100~999之间一共有:" + ct + "个水仙花数。");
	}

}
class DaffodilNumber {
	private int bw;
	private int sw;
	private int gw;
	private int num;
	public DaffodilNumber(int num) {
		this.num = num;
		this.bw = num / 100;
		this.sw = (num-bw*100)/10;
		this.gw = num % 10;
	}
	public boolean isDaffodilNumber() {
		if (num == bw * bw * bw + sw * sw * sw + gw * gw * gw)
			return true;
		else
			return false;
	}
	public String toString() {
		return bw + "*" + bw + "*" + bw + "+" + sw + "*" + sw + "*" + sw + "+"
				+ gw + "*" + gw + "*" + gw;
	}
}

2.4 【程序4】

import java.util.Scanner;
public class PrimeSplit {
	/**
* 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:
	 * (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
	 * (2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。
	 * (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。
	 */
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int n;
		while (true) {
			System.out.println("请输入一个大于1的整数:");
			n = sc.nextInt();
			if (n > 1)
				break;
		}
		System.out.print(n + " = ");
		int i = 2;
		String str = "";
		while (i <= n) {
			if (n % i == 0 && isPrime(i)) {
				str += "*" + i;
				n /= i;
				i = 2;
				continue;
			}
			i++;
		}
		System.out.println(str.substring(1));
	}
	private static boolean isPrime(int n) {
		for (int i = 2; i < n; i++) {
			if (n % i == 0) {
				return false;
			}
		}
		return true;
	}
}

2.5 【程序5】

import java.util.Scanner;
public class PerformanceRating {
	/**
	 * 【程序5】 题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。
	 * 1.程序分析:(a>b)?a:b这是条件运算符的基本例子。
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner(System.in);
		float f;
		while (true) {
			System.out.println("请输入一个成绩:");
			f = sc.nextFloat();
			if (f >= 0 && f <= 100)
				break;
		}
		System.out.print("成绩为:" + f + "的,其等级是:");
		System.out.println((f >= 90 ? "A" : (f < 60 ? "C" : "B")) + "。");
	}
}

2.6 【程序6】

法一:

import java.util.Scanner;
public class DivisorMultiple {
	/**
	 * 【程序6】 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 1.程序分析:利用辗除法。
	 */
	public static void main(String[] args) {
		int m, n, c;
		Scanner sc = new Scanner(System.in);
		while (true) {
			System.out.println("请输入第一个正整数:");
			m = sc.nextInt();
			if (m > 0)
				break;
		}
		while (true) {
			System.out.println("请输入第二个正整数:");
			n = sc.nextInt();
			if (n > 0)
				break;
		}
		c = gcd(m, n);
		System.out.println("[" + m + "," + n + "] = " + c);
		System.out.println("(" + m + "," + n + ") = " + m * n / c);
	}
	private static int gcd(int a, int b) {//使用辗转相除法
		int r=a%b;
		if(r==0){
			return b;
		}else{
			return gcd(b,r);
		}
	}
}

法二:

import java.util.Scanner;
public class MultipleDivisor {
	/**
	 * 【程序6】 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 1.程序分析:利用辗除法。
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int m, n, c;
		Scanner sc = new Scanner(System.in);
		while (true) {
			System.out.println("请输入第一个正整数:");
			m = sc.nextInt();
			if (m > 0)
				break;
		}
		while (true) {
			System.out.println("请输入第二个正整数:");
			n = sc.nextInt();
			if (n > 0)
				break;
		}
		c = gcd(m, n);
		System.out.println("[" + m + "," + n + "] = " + c);
		System.out.println("(" + m + "," + n + ") = " + m * n / c);
	}
	private static int gcd(int a, int b) {//使用辗转相减法完成的
		if (a < b) {
			int tmp;
			tmp = a;
			a = b;
			b = tmp;
		}
		if (a % b == 0)
			return b;
		else
			return gcd(b, a - b);
	}
}

2.7 【程序7】

法一:

import java.io.BufferedReader;
import java.io.InputStreamReader;
public class JudgeBlankLetterEtc {
	/**
	 * 【程序7】 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
	 * 1.程序分析:利用while语句,条件为输入的字符不为'\n'.
	 * 
	 * @throws Exception
	 */
	public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		System.out.println("请输入一串字符串(可包含字母、数字、空格及其它字符):");
		StringBuffer sb = new StringBuffer(br.readLine());
		int letterCount = 0;
		int blankCount = 0;
		int numberCount = 0;
		int otherCount = 0;
		for (int i = 0; i < sb.length(); i++) {
			char c = sb.charAt(i);
			if (('a' <= c && c <= 'z') || ('A' <= c && c <= 'Z')) {
				letterCount++;
			} else if ('0' <= c && c <= '9') {
				numberCount++;
			} else if (' ' == c) {
				blankCount++;
			} else {
				otherCount++;
			}
		}
		System.out.println("字符串:" + sb + "中,");
		System.out.println("字母:" + letterCount);
		System.out.println("数字:" + numberCount);
		System.out.println("空格:" + blankCount);
		System.out.println("其它字符:" + otherCount);
	}
}

法二:

import java.io.BufferedReader;
import java.io.InputStreamReader;
public class JudgeLetterBlankNumberEtc {
	@SuppressWarnings("deprecation")
	public static void main(String[] args) throws Exception {
		// TODO Auto-generated method stub
		System.out.println("请输入一串字符:");
		InputStreamReader isr = new InputStreamReader(System.in);
		BufferedReader br = new BufferedReader(isr);
		String str = br.readLine();
		int lc = 0;
		int nc = 0;
		int bc = 0;
		int oc = 0;
		for (int i = 0; i < str.length(); i++) {
			char ch = str.charAt(i);
			if (Character.isLetter(ch)) {
				lc++;
			} else if (Character.isDigit(ch)) {
				nc++;
			} else if (Character.isSpace(ch)) {
				bc++;
			} else {
				oc++;
			}
		}
		System.out.println("字符串\"" + str + "\"中包含的:");
		System.out.println("字母有:" + lc + "个;");
		System.out.println("数字有:" + nc + "个;");
		System.out.println("空格有:" + bc + "个;");
		System.out.println("其它字符有:" + oc + "个;");
	}

}

2.8 【程序8】

import java.util.Scanner;
public class CycleNumberAdd {
	/**
	 * 程序分析:关键是计算出每一项的值。
	 */
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int m, n;
		while (true) {
			System.out.println("请输入一个1~9之间的一个数字:");
			m = sc.nextInt();
			if (m > 0 && m < 10)
				break;
		}
		while (true) {
			System.out.println("请输入循环次数(>1,<19):");
			n = sc.nextInt();
			if (n > 1 && n < 19)
				break;
		}
		long sum = m;
		long t = m;
		String s = "" + m;
		for (int i = 0; i < n - 1; i++) {
			t = 10 * t + m;
			s += " + " + t;
			sum += t;
		}
		System.out.println(s + " = " + sum);
	}
}

2.9 【程序9】

public class PerfectNumber {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println("1000以内,所有的完全数有:");
		for (int i = 2; i < 1001; i++) {
			String str = "1";
			int sum = 1;
			for (int j = 2; j <= i / 2; j++) {
				if (i % j == 0) {
					sum += j;
					str += " + " + j;
				}
			}
			if (i == sum) {
				System.out.println(sum + " = " + str);
			}
		}
	}

}

2.10 【程序10】

public class BallBounce {
	/**
	 * 【程序10】 题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高?
	 */
	public static void main(String[] args) {
		double high = 100.0;
		double sum = 0.0;
		for (int i = 0; i < 10; i++) {
			sum += high;
			high /= 2;
		}
		System.out.println("小球10后的经过的距离为:" + sum + "米。");
		System.out.println("小球第10次落地后,再弹起的高度为:" + high + "米。");
	}

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/453333.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Hello Network】协议

作者&#xff1a;小萌新 专栏&#xff1a;网络 作者简介&#xff1a;大二学生 希望能和大家一起进步 本篇博客简介&#xff1a;简单介绍下协议并且设计一个简单的网络服务器 协议 协议的概念结构化数据传输序列化和反序列化网络版计算机服务端代码协议定制客户端代码服务线程执…

[Netty] HashWheelTimer时间轮 (十六)

文章目录 1.常见定时任务实现2.时间轮算法3.HashedWheelTimer源码分析3.1 内部结构分析3.2 构造方法3.3 添加任务3.4 工作线程Worker3.5 停止时间轮 4.HashWheelTimer总结 1.常见定时任务实现 定时器的使用场景包括&#xff1a;成月统计报表、财务对账、会员积分结算、邮件推送…

Linux Podman容器介绍

目录 Podman讲解 Container 和 Container Images 的关系 安装Podman 配置root的容器管理 国内镜像源 配置Podman的镜像源 创建容器相关命令 配置rootless的容器管理 配置Podman镜像源 管理容器镜像 管理容器 将容器作为systemd服务运行 配置普通用户来创建systemd…

Jetpack Compose之线性布局和帧布局

概述 Compose 中的线性布局对应的是Android传统视图中的LinearLayout,不一样的地方是&#xff0c;Compose根据Orientation的不同又将布局分为Column和Row, Column对应传统视图LinearLayout中orientation “vertical”的情况&#xff0c;Row对应传统视图LinearLayout中orienta…

Redis入门学习笔记【二】Redis缓存

目录 一、Redis缓存 二、Redis使用缓存遇到的问题 2.1 数据一致性 2.2缓存雪崩 2.3 缓存穿透 2.4 缓存击穿 一、Redis缓存 数据缓存是Redis最重要的一个场景&#xff0c;为缓存而生&#xff0c;在springboot中&#xff0c;一般有两种使用方式&#xff1a; 直接通过RedisT…

helm部署相关服务过程中问题记录

在学习helm部署相关服务过程中出现一些相关问题&#xff0c;自己记录并供大家一起学习&#xff01;&#xff01;&#xff01; 【问题1】部署helm 获取软件包失败 在通过wget https://storage.googleapis.com/kubernetes-helm/helm-v2.13.1-linux-amd64.tar.gz文件过程发现无法…

消息中间件的定义

中间件(middleware)是基础软件的一大类&#xff0c;属于可复用的软件范畴。中间件在操作系统软件&#xff0c;网络和数据库之上&#xff0c;应用软件之下&#xff0c;总的作用是为处于自己上层的应用软件提供运行于开发的环境&#xff0c;帮助用户灵活、高效的开发和集成复杂的…

【软考数据库】第二章 程序语言基础知识

目录 2.1 程序设计语言的基本概念2.2 程序设计语言的基本成分2.3 编译程序基本原理 前言&#xff1a; 笔记来自《文老师软考数据库》教材精讲&#xff0c;精讲视频在b站&#xff0c;某宝都可以找到&#xff0c;个人感觉通俗易懂。 2.1 程序设计语言的基本概念 程序设计语言是…

Nginx中的location规则与rewrite重写

location与rewrite的区别 rewrite &#xff1a;对访问的域名或者域名内的URL路径地址重写 location&#xff1a;对访问的路径做访问控制或者代理转发 从功能看 rewrite 和 location 似乎有点像&#xff0c;都能实现跳转&#xff0c;主要区别在于 rewrite 是在同一域名内更改获…

常见的3d bounding box标注工具

0. 简介 对于3d bounding box而言&#xff0c;近几年随着自动驾驶的火热&#xff0c;其标注工具也日渐多了起来&#xff0c;本篇文章不讲具体的算法&#xff0c;这里主要聚焦于这些开源的3d bounding box标注工具&#xff0c;以及他们是怎么使用的。这里借鉴了我想静静&#x…

牛客前端编程语言错题2

【语法】 名为“ctx”的变量是某个HTML5画布对象的上下文。以下代码绘制的是什么&#xff08;&#xff09; Ctx.arc(x,y,r,0,Math.PI,true); 在给定点绘制一个矩形 从一个点到另一个点绘制一条直线 在给定点绘制一个半圆 在给定点绘制一个圆 链接&#xff1a;https://www.now…

分布式系统反向代理设计与正向代理

反向代理与正向代理分析 代理服务器&#xff1a;位于发起请求的客户端与原始服务器端之间的一台跳板服务器&#xff0c;代理服务器分为正向代理服务器和反向代理服务器 正向代理 &#xff1a;代理客户端&#xff0c;隐藏了真实的请求客户端&#xff0c;服务端不知道真实的客户…

安全响应中心 — 垃圾邮件事件报告(4.18)

天空卫士安全响应中心邮件安全小组是成都研发中心的核心部门之一。在日常工作中&#xff0c;对大量样本进行分析并提取规则&#xff0c;实现对包含垃圾内容、钓鱼内容的邮件进行检测和隔离&#xff0c;从而抵御对业务电子邮件的入侵&#xff0c;防止钓鱼邮件等隐蔽邮件威胁。其…

9. 树的进阶

9. 树的进阶 ​ 之前我们学习过二叉查找树&#xff0c;发现它的查询效率比单纯的链表和数组的查询效率要高很多&#xff0c;大部分情况下&#xff0c;确实是这样的&#xff0c;但不幸的是&#xff0c;在最坏情况下&#xff0c;二叉查找树的性能还是很糟糕。 例如我们依次往二叉…

基于tensorflow2.x的多GPU并行训练

由于最近训练transformer&#xff0c;在单卡上显存不够&#xff0c;另外一块卡上也无法加载&#xff0c;故尝试使用双卡并行的策略。将基本的流程、遇见的难题汇总在这里。分布策略解释 使用官方给出的tf.distribute.MirroredStrategy作为分布策略。这个策略通过如下的方式运行…

Echarts渲染行政区划,实现聚焦高亮交互

首先需要准备行政区划的JSON数据&#xff0c;可以在DataV获取省市区的JSON数据。 最终效果图 渲染地图 建立一个地图容器&#xff0c;注意要给宽高 <!-- 地图容器 --> <div id"map"></div>请求JSON数据&#xff0c;渲染地图 $(function() {var …

Ubuntu 20版本将动态ip修改为静态ip时,ping 不通网络

问题描述&#xff1a; 在对Ubuntu 20版本将动态ip修改为静态ip时&#xff0c;ping www.baidu.com ping不通了 火狐浏览器没有了网路&#xff0c;下载不了东西 一直卡在这里不动 问题出在哪里还是配置ip dns 网关的问题 如果我们在当初安装ubuntu 时&#xff0c;将网络设置成…

24年专转本想要成功我们一个怎样做

23年转本报名人数创造高峰&#xff0c; 24年转本的同学们 如何脱颖而出&#xff0c;成功转本呢&#xff1f;一、明确转本目的 转本是一场重要的考试&#xff0c;有人把转本比喻为第二次高考。面对这唯一的进入本科院校学习的机会&#xff0c;考还是不考&#xff1f; 很多同…

小六壬学习笔记

小六壬学习笔记 简介前置知识:十二地支和十二时辰适用范围起课&#xff1a;月令日时卦象 疑问&#xff1a;遇到闰月怎么办&#xff1f;禁忌数字起课法手机计算器取余数 简单解卦 简介 马前课&#xff0c;又名&#xff1a;小六壬。 小六壬历史渊源&#xff1a;https://m.sohu.c…

RXJava2的基本概念与常见操作符使用实例解析

RXJava2是什么&#xff1f;可以简单介绍一下其特点和应用场景吗&#xff1f; RXJava2是基于观察者模式和链式编程思想的异步编程库&#xff0c;它可以用来优雅地处理异步操作&#xff0c;比如网络请求、数据库查询、文件I/O等操作&#xff0c;减少了回调嵌套&#xff0c;提高了…