这里我需要什么,但它不起作用。有人可能会指出我做错了什么:
import java.util.Scanner;
public class Birthday
{
public static void main(String[]args)
{
int birthday;
int age;
int YearOfBirth;
Scanner keyboard = new Scanner( System.in);
System.out.println(" What is your +Age ?");
age = keyboard.nextInt();
YearOfBirth= 2011 - age;
System.out.println("I was born :+ YearsOfBirth.");
}
}
答案 0 :(得分:2)
System.out.println("I was born :+ YearsOfBirth.");
在显示yearsOfBirth之前,你永远不会关闭你的报价
System.out.println("I was born : "+ YearsOfBirth+".");
试试并告诉我。
另外我只是注意到变量名称是错误的:在声明它YearsOfBirth
时,在print语句中它是YearOfbirth
。
答案 1 :(得分:1)
System.out.println("I was born :+ YearsOfBirth.");
应该是
System.out.println("I was born :" + YearOfBirth + ".");
不知道age = keyboard.nextInt();
是否有效。
答案 2 :(得分:0)
System.out.println(“我出生时:+ YearsOfBirth。”); ......这是错的
使用它:
System.out.println(“我出生时:+”YearsOfBirth);
答案 3 :(得分:0)
System.out.println("I was born :+ YearsOfBirth.");
这导致字符串字面意思“我出生了:+ YearsOfBirth。”被打印出来。这不是你想要的。也许这就是你的意思:
System.out.println("I was born :"+ YearsOfBirth);
这一次,变量YearsOfBirth
被转换为String并与“I born born:”连接,以提供所需的结果。
在Java中,当你在两个对象上应用连接运算符(+),并且其中一个碰巧是一个String时,另一个将转换为String对象(该值可能没有意义),并且将返回一个新的String对象。另外,双引号中的文字通常是字符串。
答案 4 :(得分:0)
import java.util.Scanner;
public class Birthday
{
public static void main(String[]args)
{
int birthday;
int age;
int yearOfBirth;
System.out.println(" What is your Age ?");
Scanner keyboard = new Scanner( System.in);
String input = keyboard.nextLine();
age = Integer.parseInt(input);
yearOfBirth = 2011 - age;
System.out.println("I was born :" + yearOfBirth);
}
}
这应该有用。