每次尝试编译时,它表明d1
变量可能未初始化。我认为可能是问题所在else if
。告诉我如何在中运行2条语句else if
。
import java.util.Scanner;
class IDC {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println(" ");
System.out.println("Input ID card no...");
String x = scan.next();
x = x.substring(0, x.length() - 1); //removing the last char of the string
String CardNo = x;
String y = x = x.substring(0, x.length() - 7); //birthday
y = "19" + y; //birth year = y
String CardNO1 = CardNo.substring(0, CardNo.length() - 4);
//System.out.println(CardNO1);
CardNO1 = CardNO1.substring(2);
//System.out.println(CardNO1);
//gender
int g = Integer.parseInt(CardNO1); //converting string to int
String G;
if (g < 500) {
G = "Male";
} else {
G = "female";
}
//System.out.println(G);
double C = Integer.parseInt(CardNO1);
if (C > 500) {
C = C - 500;
} else {
C = C;
}
//calculating month and the day of birth
double d1;
int Month;
//
if (C < 31) {
Month = 1;
d1 = C;
} else if (C <= 60) {
Month = 2;
d1 = C - 31;
} else if (C <= 91) {
Month = 3;
d1 = C - 60;
} else if (C <= 121) {
Month = 4;
d1 = C - 91;
} else if (C <= 152) {
Month = 5;
d1 = C - 121;
} else if (C <= 182) {
Month = 6;
d1 = C - 152;
} else if (C <= 213) {
Month = 7;
d1 = C - 182;
} else if (C <= 244) {
Month = 8;
d1 = C - 213;
} else if (C <= 274) {
Month = 9;
d1 = C - 244;
} else if (C <= 305) {
Month = 10;
d1 = C - 274;
} else if (C <= 335) {
Month = 11;
d1 = C - 305;
} else if (C <= 366) {
Month = 12;
d1 = C - 335;
} else {
Month = 00;
}
//double d1;
System.out.println(" ");
System.out.println("Your Birthday... ");
System.out.println("Date.." + d1);
System.out.print("Month.. " + Month);
System.out.println(" Year.. " + y);
System.out.println(" ");
System.out.println("Your Gender...");
System.out.println(G);
}
}
d1不在else块中且仅在if或else if块中初始化,因此,如果if()和elseif()块中的所有语句均为false,则控制器进入else块,而d1仍然不是初始化。因此,当您尝试在system.out.println()中访问它时,编译器正确地抛出该错误。您可能想在一开始将值初始化为0。
以下项目是从一个在线课程中逐字复制的。它应该显示一个ListView,但什么也不显示。我是一个全新的Android工作室,这只是我在里面的第二个项目。这里有5个文件,我将在下面显示每个文件的内容。我只需要另一双或两双眼睛来发现问题,因为我是“虫子盲”。任何帮助都将不胜感激。 activity_main.xml OurAdapter.java 包com.example.tadhg.uiuxAdapt
print语句会导致以下编译时错误, 局部变量f可能尚未初始化 如果Java中的原语已经有一个默认值(float=0.0f),为什么我需要定义一个呢? 所以,这是有效的 谢谢大家!
python指标代码pymetrics可用于分析代码文件的复杂性。它们创建了两个不同的指标: 整个文件的COCOMO 2的SLOC度量 我想知道这些指标的数值意味着什么,而不是它们的定义。值“1”是什么意思?一个数字‘5’?一个“10”的数字?越高越好还是越低越好?什么数值指的是好代码,什么指的是真正的坏代码?上网搜了一下,给了一些提示,但我不确定分类指的是公制(1)还是公制(2)。我想让这两个数
在我的Wordpress站点中,我有一个自定义的PHP搜索。它通过“include”出现在特定页面的内容部分,因此它是一个单独的文件。 http://www.glutenfreeireland.com/accoloration/find-accoloration/ 搜索和结果的整个代码显示在DIV.whereToeatSearchWrapper中。不幸的是,在文本“Step 1:Choose a
我试图解决这个问题:第三个最大数量 但我犯了这个错误 第4行:Char 37:运行时错误:有符号整数溢出:-9223372036854775808-10不能在类型“long long”(solution.cpp)摘要中表示:UndefinedBehaviorSanitizer:undefined behavior prog_joined。cpp:13:37 这是我的代码 有人能告诉我这个错误到底意
我使用的是Netbeans,编译器说变量可能没有初始化。这是什么意思?