java单位转换_如何创建单位转换Java程序

步骤1:设置

步骤2:为LengthConverter创建骨架

注意:

在代码中添加注释通常是个好主意。在上面的方法中做注释,以解释方法的作用,解释传递给方法的参数,解释方法的返回值等。这将帮助您了解要完成的工作,并且有助于人们阅读代码将来了解您要完成的工作。

步骤3:创建任何实例变量

7bf91e437cca613442a28849eabfbe42.png

任意转换因子

在您的LengthConverter类中,创建一个实例变量,该变量将用作米和其他长度测量之间的因子。我们将此变量命名为factor,以便在本教程的后面部分中提及。出于代码安全性的考虑,应将此变量指定为“private”,将其指定为“double”,因为它很可能是浮动变量。点号。

其他实例变量

您可能要在此类中实现的唯一其他实例变量将是保存米与另一长度测量之间的因子的实际数值的变量。。例如,英寸和米之间的乘数是0.0254,因此为该值创建变量可能会有所帮助。所有这些变量都应指定为“最终私有双精度”,以防止修改该值。

示例:

最终私有双精度INCH_TO_METER=0.0254

注意:

您必须查找米和您要考虑的任何其他长度单位之间的转换因子。

第4步:实现构造器

b67e78d12c1bc962b2672a64414c78b3.png

构造函数的目的是创建LengthConverter对象的实例。此类对象的任何实例都将具有String对象作为代表长度单位的参数。例如,如果我要构造一个LengthConverter对象,该对象将在英寸和“中间”单位(米)之间转换,我会这样写:

LengthConverterinchesToMeters=newLengthConverter(“in”);

字符串“in”是构造函数的参数,它表示该对象将使用英寸到米的转换因子。

构造函数必须检查此参数的常用长度单位(in,ft,mi,cm,yd等),并且必须相应地设置实例变量factor的值。在以英寸为参数的情况下,factor将设置为0.0254,因为一英寸等于0.0254米。

步骤5:实现ToMeters()

84554559c8cf9a1cf35b832cc6ce7e93.png

此方法仅以用户指定的输入单位进行测量(作为参数传递),并返回其等效值(以米为单位)。将参数乘以实例变量factor,然后返回结果。

步骤6:实现FromMeters()

6730a1856aafdc851855eceea30b2d9c.png

此方法以米为单位进行测量(作为参数传递),并以用户指定的输出单位返回其等效值。用实例变量,因子除以参数并返回结果。

第7步:创建Main()方法

280fe385f0827fec9213304c3a5d187b.png

在相同的length包内创建另一个类在步骤1中创建LengthConverter的方式。将此类命名为ConversionCalculator。该类将包含程序的main()方法,这是任何Java程序的核心。当您单击“运行”时,首先调用main()方法,然后在main()方法中调用其他方法。

最常用的方法main()方法的语法是,

publicstaticvoidmain(String[]args){

}

步骤8:扫描仪和用户输入

18585af424febab8c94a4155e353124a.png

创建扫描程序

为了与用户交互,程序必须使用扫描程序对象。扫描程序对象可以读取用户在命令行中键入的内容。此扫描程序将读取用户希望转换的数值,用户希望转换的单位以及用户希望转换的单位。

要创建要从命令行读取的扫描程序,请键入以下内容:

Scannerin=新的Scanner(System.in);

注意:“in”是此代码中Scanner的名称。

注意::将以下代码行复制并粘贴到类声明之外,以便Eclipse识别Scanner对象。

importjava.util.Scanner;

获取“从”和“至”单位

打印出一条消息,询问用户要转换的单位。调用扫描程序的nextLine()方法获取此字符串。

对用户要转换为的单位执行相同操作。

注意:,这可能有助于告知用户要输入的法律价值。例如,如果您的代码仅用于处理“in”而不是完整的单词“inches”,那么您应该编辑代码以解决此问题,或者让用户知道“in”是唯一合法的输入值。

步骤9:构造两个LengthConverter对象

19426bc5f5f9a2a376aa5edc9aebf1d4.png

此时,您必须构造两个LengthConverter对象是执行单位转换所必需的。第一个对象将负责“从”单位和仪表之间的转换。第二个对象将处理仪表和“至”单位之间的转换。让我们将第一个对象命名为“from”,将第二个对象命名为“to”,以便在以后的步骤中可以方便地引用它们。

步骤10:获取要转换的值

6e02058e901c604052c2cf30d21afb29.png

打印出一条消息,提示用户键入要转换的数值。使用扫描仪的nextDouble()方法获取该值,然后将其分配给double变量。我们将此变量称为“val”,以便在以后的步骤中可以使用它。

步骤11:“从”到仪表

9a3c842bceadc451ad75b988221c51c8.png

在第一个LengthConverter对象from中调用toMeters()方法,并使用val作为toMeters()方法所需的参数。将返回的值(现在以米为单位)分配给double变量。我们将此变量称为meters,以便在以后的步骤中可以使用它。

步骤12:仪表的“To”

281c56be2edb4b9a06ff341f9bd56838.png

在第二个LengthConverter对象至上调用fromMeters()方法,并使用meters作为fromMeters()方法所需的参数。将返回的值(现在以所需的输出单位)分配给double变量。我们将此变量称为converted,以便在以后的步骤中可以引用它。

步骤13:打印结果并测试

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值