From b3251c21b8ce9d555a3c3bd259332fd823cf57c8 Mon Sep 17 00:00:00 2001 From: Luojiale <2272532647@qq.com> Date: Tue, 10 Mar 2026 10:04:41 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B8=A9=E5=BA=A6=E8=BD=AC=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- w1/HelloWorld.class | Bin 0 -> 427 bytes w1/HelloWorld.java | 5 + w1/w1Luojiale202506050210/README.md | 14 +++ .../TemperatureConverter.class | Bin 0 -> 2279 bytes .../TemperatureConverter.java | 88 ++++++++++++++++++ 5 files changed, 107 insertions(+) create mode 100644 w1/HelloWorld.class create mode 100644 w1/HelloWorld.java create mode 100644 w1/w1Luojiale202506050210/README.md create mode 100644 w1/w1Luojiale202506050210/TemperatureConverter.class create mode 100644 w1/w1Luojiale202506050210/TemperatureConverter.java diff --git a/w1/HelloWorld.class b/w1/HelloWorld.class new file mode 100644 index 0000000000000000000000000000000000000000..371c0edfa1019c370d0c6dfd73e6878a169279b3 GIT binary patch literal 427 zcmZvZ%SyvQ6o&tkq)ii3Q(IfF1-lSZ5%T~QH=?*GDn#nSRniV+N-h!;!N<~tf(swO zhZ4`kMG-oSbD8=7kHeYopU*D<7wFs2pqnrp)KDk17U6T~$6-46Z=!{m7KHk#Ol5IK z(7oZrLIaiw+rb)~fAZkvsSpXPvXV{RaRri@f1As+2#Q>U$*6&KLi0+*adv!gpXKpv zV55Z%6Kw|_Y!W&vYy|UBLE@CT-XFM{kf}1AkA@QyJ%U|vD=NV_&t`()j%6yY%On!{ zT^PlDV)X_j{V;r}*>vJZ~wWANvD;I=q mj_O&}7Iv`9SxFBoD`36BY&YNGF6HVk0G(HCuy~Ja4g0@hJ6ECr literal 0 HcmV?d00001 diff --git a/w1/HelloWorld.java b/w1/HelloWorld.java new file mode 100644 index 0000000..3d781ec --- /dev/null +++ b/w1/HelloWorld.java @@ -0,0 +1,5 @@ +public class HelloWorld { + public static void main(String[] args) { + System.out.println("Hello, World!"); + } +} \ No newline at end of file diff --git a/w1/w1Luojiale202506050210/README.md b/w1/w1Luojiale202506050210/README.md new file mode 100644 index 0000000..3f2361d --- /dev/null +++ b/w1/w1Luojiale202506050210/README.md @@ -0,0 +1,14 @@ +\# 温度转换器(Java版) + +基于Python原版移植,支持摄氏度(C)和华氏度(F)互转,新增\*\*命令行参数模式\*\*(加分项)。 + + + +\## 编译与运行命令 + +\### 1. 编译源码 + +```bash + +javac TemperatureConverter.java + diff --git a/w1/w1Luojiale202506050210/TemperatureConverter.class b/w1/w1Luojiale202506050210/TemperatureConverter.class new file mode 100644 index 0000000000000000000000000000000000000000..eb1bba8203a2420e062905751a70a022e6ec1444 GIT binary patch literal 2279 zcmZ`)`%@EF7(EM{Y)IBuh!)z4@xdcJ6%_>3f(h|a1T_eveYk`LqRA#E8>)TGAk$8D z#M(}^Gdi8NwkX=^4B~WRCI&jwANy~Vg!mKxKyCZo-SALjGIQ_Uz4!a>Ip;g~?qB~V zW&yP0Gc)p#FMtV6LS6^lTWmpRv`p zIB3-eW~{~<0c%C9gO!7=TMmTeu%t%AvNNcR$YE6ub67VlDFc3b69~|t!>7m`HdLJH zSl-v8hJDIVi=#(?jn-=uQPt-moqcJrLX@yf9Lab{9!6_e=h!2>iVs@nd=M5D|55gQuoK~I~!^n>`r_7 z%6ImrM!S0}I|&c>TeM%mN!l>_HO;!53){ zgw#u#FHW1#!l6XhVJ@DSf0$TEj?X{1mP*`sHaeR6GV%B57-P9l#C}Fm(8%}|6IwZN zc9!^n2q#>$RV3v15zq2mJaZVu3^xu6I3(gQj=aFe6^!=#$zPU`6pqM?PdW8-F$5hV zjxs?kYVc%;yz7)AvI$)T(8c$v_q<>1Lk~f~+yq%evVx`a$QV6q_J=f99I+N*eM#Ot~pMyD~ zN?|q9>r;ncW4qH#mk&jpg+xrfvOnUBM!JJ;X*et^!!j!)U*U4NOz={M(%Sk#`=5`T z_I>v3&|Rvq^2s6wF+{Eyk^E7)Ymn{cT4`Lpc6546;S+HV=jmF~97Id^=J3f%o9Opg zOE%q$r>eySx-U34qY)Gl(r64Wq3;elbxJ1C)wPJ8jp({5)Y=wN}hQF`7;Jx9Hv@(H+U8gLk)mQ4dD z6tH^Im@O>>uccUBW`l6vhJv6C7Vp$cF>5J?#LE$58KM}96M`?t6jRJcu<9{f0rDYG z)(e%h{9TwT<5)HQ6oq|{vHl6(>UfM2>y{X{RmD&lL+w%OcUH&Ha2q0b>PQqaAY&I70#l|>}O=49u&%%0G7y)R5mkiiVM41dn z2oz94a%_T`z5*6(qYpwUy(y!AIV$PD1663E+qN0oDY~Ano}F}Nc2S;2%CsB9XdprM z;38$Jh0*dHwE_wS)IG;W0hjXIX!svx=IKG7paD1m-37EKeL%BPUM5+1%28FRu{uQR z5UI*#Qk~^B8Y5AY=v0;vgTHx+P>H5&E46L(%{)MJ?KJDe7PyFtTLW1H{vT|};xaKL zIvf+hp<6EtXM%DV2#!>3?Tq2{ZIqS8@xc+MWxrttd42ixJmBf$9juFCxOWnb)mHz~ zT18uX;dN^*EK@`yfowI($R3f2d_uwQ^JVotU^lBsw$gi#v2= 1) { + handleCommandLine(args); + return; + } + + // 控制台交互模式 + Scanner scanner = new Scanner(System.in); + System.out.print("请输入要转换的温度与单位(例如 36.6 C 或 97 F):"); + String s = scanner.nextLine().trim(); + scanner.close(); + + // 判空处理 + if (s.isEmpty()) { + System.out.println("输入为空,程序退出。"); + return; + } + + // 解析输入内容 + String[] parts = s.split(" "); + try { + double value = Double.parseDouble(parts[0]); + String unit = parts.length > 1 ? parts[1].toUpperCase() : "C"; + convertAndPrint(value, unit); + } catch (Exception e) { + System.out.println("输入解析失败,请按示例输入数值与单位,例如:36.6 C"); + } + } + + /** + * 处理命令行参数的温度转换 + * @param args 命令行参数数组 + */ + private static void handleCommandLine(String[] args) { + try { + double value = Double.parseDouble(args[0]); + String unit = args.length > 1 ? args[1].toUpperCase() : "C"; + convertAndPrint(value, unit); + } catch (Exception e) { + System.out.println("命令行参数格式错误,示例:java TemperatureConverter 36.6 C"); + } + } + + /** + * 执行温度转换并打印结果 + * @param value 温度数值 + * @param unit 温度单位(C/F) + */ + private static void convertAndPrint(double value, String unit) { + if (unit.startsWith("C")) { + double f = celsiusToFahrenheit(value); + System.out.printf("%.2f °C = %.2f °F%n", value, f); + } else if (unit.startsWith("F")) { + double c = fahrenheitToCelsius(value); + System.out.printf("%.2f °F = %.2f °C%n", value, c); + } else { + System.out.println("未知单位,请使用 C 或 F。"); + } + } +} \ No newline at end of file