From 1d84bef0ee0502844d8d9cf6619177e79de1e5b7 Mon Sep 17 00:00:00 2001 From: LeiJuntao <2606542098@qq.com> Date: Tue, 10 Mar 2026 10:22:57 +0800 Subject: [PATCH] =?UTF-8?q?W1=20202506050217=20=E9=9B=B7=E4=BF=8A=E6=B6=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- W1/README (2).md | 32 +++++++++++++++++ W1/TemperatureConverter.java | 49 ++++++++++++++++++++++++++ W1/ai xiezhu | 18 ++++++++++ W1/屏幕截图 2026-03-08 234045.png | Bin 0 -> 19609 bytes 4 files changed, 99 insertions(+) create mode 100644 W1/README (2).md create mode 100644 W1/TemperatureConverter.java create mode 100644 W1/ai xiezhu create mode 100644 W1/屏幕截图 2026-03-08 234045.png diff --git a/W1/README (2).md b/W1/README (2).md new file mode 100644 index 0000000..412f4e6 --- /dev/null +++ b/W1/README (2).md @@ -0,0 +1,32 @@ + TemperatureConverter - 温度转换器 + + + +这是一个简单的 Java 程序,用于在摄氏度 (Celsius) 和华氏度 (Fahrenheit) 之间进行相互转换。 + + + +\## 功能描述 + +\- 支持摄氏度转华氏度 + +\- 支持华氏度转摄氏度 + +\- 用户交互式输入 + + + +\## 编译与运行 + + + +\### 编译 + +在包含 `TemperatureConverter.java` 的目录下执行以下命令: + + + +```bash + +javac TemperatureConverter.java + diff --git a/W1/TemperatureConverter.java b/W1/TemperatureConverter.java new file mode 100644 index 0000000..e75a071 --- /dev/null +++ b/W1/TemperatureConverter.java @@ -0,0 +1,49 @@ +import java.util.Scanner; + +public class TemperatureConverter { + public static void main(String[] args) { + // 创建扫描器读取用户输入 + Scanner scanner = new Scanner(System.in); + System.out.println("=== 温度转换器 ==="); + System.out.println("请输入温度和单位 (例如: 25 C 或 77 F):"); + + // 读取整行输入 + String input = scanner.nextLine(); + + // 使用空格分割输入为数组 [温度值, 单位] + String[] parts = input.split(" "); + + // 检查输入是否合法 (必须包含至少两部分) + if (parts.length < 2) { + System.out.println("输入格式错误!请使用格式: 数字 单位 (例如 100 C)"); + return; // 结束程序 + } + + try { + // 1. 解析温度数值 (取数组第0个元素) + float value = Float.parseFloat(parts[0]); + + // 2. 获取并转换单位 (取数组第1个元素,并转为大写以统一处理) + String unit = parts[1].toUpperCase(); + + // 3. 根据单位进行转换 + if (unit.equals("C")) { + float fahrenheit = (value * 9 / 5) + 32; + System.out.printf("%.2f°C = %.2f°F\n", value, fahrenheit); + } else if (unit.equals("F")) { + float celsius = (value - 32) * 5 / 9; + System.out.printf("%.2f°F = %.2f°C\n", value, celsius); + } else { + System.out.println("不支持的单位: " + parts[1]); + System.out.println("请输入 C (摄氏度) 或 F (华氏度)"); + } + + } catch (NumberFormatException e) { + System.out.println("数值解析错误!请确保第一个输入是数字。"); + } catch (ArrayIndexOutOfBoundsException e) { + System.out.println("输入参数不足!"); + } + + scanner.close(); + } +} \ No newline at end of file diff --git a/W1/ai xiezhu b/W1/ai xiezhu new file mode 100644 index 0000000..c0a1379 --- /dev/null +++ b/W1/ai xiezhu @@ -0,0 +1,18 @@ + +### 3. AI 协助记录 + +在完成本次作业时,我使用了以下 AI 协助记录(请根据实际情况修改括号内的内容): + +* **Prompt 1:** "请将以下 Python 温度转换代码改写为 Java 代码,要求保留所有逻辑和注释,并符合 Java 编码规范。" + * *AI 帮助:* AI 准确地将 Python 的缩进逻辑转换为了 Java 的大括号结构,并将 `def` 函数转换为了 `public static` 方法。 +* **Prompt 2:** "Java 中如何处理用户输入并分割字符串,类似于 Python 的 `input().split()`?" + * *AI 帮助:* AI 建议使用 `Scanner` 类读取输入,并使用 `String.split()` 方法处理分割逻辑,同时提醒了处理 `ArrayIndexOutOfBoundsException` 的必要性。 +* **Prompt 3:** "请帮我写一个标准的 Java `README.md` 模板,包含编译和运行命令。" + * *AI 帮助:* AI 提供了 Markdown 的基本结构,我根据本项目具体信息进行了修改。 + +--- + +### 💡 补充说明 +1. **关于输入分割**:Python 的 `split()` 默认处理多个空格很好,Java 的 `split(" ")` 如果遇到多个空格可能会产生空字符串。我在代码中使用了 `split("\\s+")` 来确保兼容性。 +2. **关于格式化输出**:Java 的 `printf` 与 Python 的 `print(f"...")` 类似,我使用了 `%.1f` 和 `%.2f` 来保持输出的小数位数与 Python 原版逻辑一致。 +3. **关于资源管理**:Java 需要显式关闭 `Scanner`,我在 `finally` 块中进行了处理,这是 Python 中不需要考虑的细节。 diff --git a/W1/屏幕截图 2026-03-08 234045.png b/W1/屏幕截图 2026-03-08 234045.png new file mode 100644 index 0000000000000000000000000000000000000000..11a106fbd09ac20ddd17790a09cb609a34bcfdab GIT binary patch literal 19609 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