2014-09-22 71 views
0

这些是分配的说明:包装和扫描仪类Java中

For this Question, you will be using two of the prominent wrapper classes to convert String variables 
    which represent numerical data into primitive types as instances of the wrapper classes. 
    As part of this Question you will be using a Scanner object to read in user input. 
    There are also 2 previously declared and instantiated String object references, value1 and value2 
    that you will use as part of this exercise. 

    1) Declare an int variable with the identifier parsedInt, and double variable with the identifer parsedDouble 
    2) Use a static method of the Integer class to convert the String object reference value1 to an int 
     and assign that value to the parsedInt variable. 
    3) Use a static method of the Double class to convert the String object reference value2 to a double 
     and assign that value to the parsedDouble variable. 
    4) Declare 2 Double variables with identifiers of your choosing. 
    5) Declare an instantiate a Scanner variable (object reference) with the identifier of your choosing 
     Make sure that it can read from the Java console (System.in) and that you have imported the Scanner class 
    5) Using a static method of the Double class, convert String values read in from the console 
     (by calling the nextLine method on your Scanner object reference) to the Double type 
     and assign them to the two Double object references declared in the previous step. 
    6) Declare 2 boolean variables with the identifiers isInfinite and isNaN 
    7) Call methods on your Double object references to make the following tests and store the result in the proper variable 
     Use a method to test if the first value that you read in from the console is Infinite 
     Use a method to test if the second value that you read in from the console is Not a Number (NaN) 
    8) Declare an int variable result 
    9) Convert the values of the two Double object references to integers 
     and subtract the second number that was read in from the first that was read in 
     and assign the result of that mathematical expression to the variable result 

我的问题在5号开始,我不太清楚,我被要求做,我不知道如何将字符串值转换为双打。这是我到目前为止有:

double woof1, woof2; 
    boolean isInfinite, isNaN; 
    int result; 

    Integer parsedInt = new Integer(value1); 
    Double parsedDouble = new Double(value2); 

    Scanner scan = new Scanner(System.in); 

更新 现在我有这个

double woof1, woof2; 
    boolean isInfinite, isNaN; 
    int result; 

    Integer parsedInt = new Integer(value1); 
    Double parsedDouble = new Double(value2); 

    Scanner scan = new Scanner(System.in); 

    woof1 = Integer.parseInt(scan.nextLine()); 
    woof2 = Double.parseDouble(scan.nextLine()); 

,现在我不知道该怎么办7号

+0

我倾向于将此打开。克里斯汀没有抛出一个“给我代码”的问题。相反,她正在努力完成每项要求。未来还有很多事情要结束。 – jww 2014-09-22 04:27:44

回答

0

首先 - 你已经得到了扫描仪的参考。这是一个开始,但我建议您在声明任何其他数字类型之前。

二 - 所有的数值包装,如IntegerLong,和Double支持parse###方法,包括他们正在解析基本类型的名称。他们以String作为他们的正式论点。例如,对于Integer包装器,其解析方法是Integer.parseInt()

第三,从Scanner实例中读取一条线就像scan.nextLine()一样简单。如果该行包含要解析的数字,并且您想解析Double,请考虑实际上是什么Double.parse###。我把这个作为练习留给读者。

+0

请参阅我的更新。 – 2014-09-22 02:06:11

+0

所以你最近的编辑有更好的...但是你真的应该摆脱value1和value2,因为这两个变量都不存在。 – Makoto 2014-09-22 02:06:44

+0

它们确实存在,它们已经被教授在其他一些代码中声明了。 – 2014-09-22 02:11:51

0

根本就

double parsedDouble = Double.parseDouble(scan.nextLine()); 

但是,这是一个愚蠢的问题b因为它会更好做

double parsedDouble = scan.nextDouble(); 
+1

什么让这更好? – Makoto 2014-09-22 01:46:16

+0

我会认为它更好,因为它更简洁。但无论如何 – 2014-09-22 01:47:01

+1

它确实更简洁,并更好地使用'扫描仪'。如果这种方法存在,为什么要用手来干扰呢? (编辑:当我说这是一个愚蠢的问题,我谈论这项任务,而不是OP) – Dici 2014-09-22 01:48:51