2

さて、私はいくつかのものを変換しようとしています。

だから私はすでにスキャナーを文字列に変換しました。今私がやりたいことは、彼らが入力した値を取り、それをいくつかのelse ifステートメントの整数として使用することです。うまくいきません!

これまでの私のコードは次のとおりです。

import java.util.Scanner;
public class apples {
public static void main(String args[]) {

    Scanner fname = new Scanner(System.in);
    Scanner sname = new Scanner(System.in);
    Scanner number = new Scanner(System.in);
    tuna weight = new tuna();

    System.out.println("Enter Your First Name: ");
    String fname1 = fname.nextLine();
    String fnames = fname1;

    System.out.println("Enter Your Last Name: ");
    String sname1 = sname.nextLine();
    String snames = sname1;

    System.out.println("Enter Your Weight (Lbs.) : ");
    String num = number.nextLine();
    String num1 = num;

    System.out.println("Okay " + fname1 + " " + sname1
            + " I can see here that you weigh " + num + "lbs.");
    int num2 = num1.parseInt();
    if (num1 >= 275)
        System.out
                .println("You know, you should maybe consider laying off the candy my friend.....");
}

}

4

5 に答える 5

5

で引数を使用する必要がありますparseInt

int num2 = Integer.parseInt(num1);

if (num2 >= 275) 
...
于 2012-08-29T23:10:44.223 に答える
2

これを試して:

try{
  num2 = Integer.parseInt(num1);
}
catch(Exception ex) {
  System.out.println("Something went wrong, the string could not be converted to int.");
}

文字列にはintに変換できない文字が含まれている可能性があるため、try-catchは非常に重要です。これよりもうまくキャッチする必要がありますが、覚えておいてください

于 2012-08-29T23:13:47.613 に答える
0

他のタイプのスキャナーメソッドを使用して int 値を取得することもできます

num = number.nextInt();
于 2012-08-30T11:57:09.963 に答える