Tag: if语句

java循环,if else

我知道这是非常简单的事情,但是,我只编程了几个月,所以我的大脑有时会出现雾,我需要帮助一个带有嵌套的else if语句的while循环。 问题我的循环是连续的,因为用户永远不会有机会输入他们的选择(-1停止循环)。 如何通过要求用户输入选项(1-4或-1退出)来更改循环以使其运行 请任何帮助表示赞赏。 我知道这很简单,我已经在之前的论坛讨论中进行了搜索,但我似乎无法使其发挥作用。 //create new scanner object Scanner userInput = new Scanner (System.in); int end = 0; //find out what user wants to do with address book while (end != -1) { System.out.println(” “); System.out.println(” “); System.out.println(“—————————-“); System.out.println(“What would you like to do with your address book? …”); System.out.println(“—————————-“); System.out.println(“Add new [Enter […]

你如何在java中的if / else语句之间加入一些东西?

所以我有这样的事情: if (blah) { doSomething(); } else if (blahblah) { doSomethingElse(); } 但除非我在“if”和“if else”之间插入一些东西,否则我不能做“别的东西”,我不能在“if”之前放一些东西,因为那些东西需要“if”来在该function发生之前发生。 有人可以帮忙吗?

什么是Java中有效的if / else?

我正在尝试使用简单的if / else返回不同​​的值来检查Java中的偶数。 if (move % 2 == 0) { return “o”; } else { return “O”; } 我知道你可以使用JavaScript if () : a ? b ; 这可以用在Java中吗?

java – 范围为int的switch语句

我想用一个switch语句检查一些数字,我发现有几个地方说类似case 1…5或case (score >= 120) && (score <=125)会起作用但我只是以某种方式保持在获得错误。 我想要的是如果数字在1600-1699之间然后做点什么。 我可以做if语句,但是如果可能的话,我觉得是时候开始使用switch了。

Java语句,处理优先级(“悬挂其他”)

鉴于以下有效代码: Boolean a = false; if (a) System.out.println(“A”); else System.out.println(“!A”); 现在,根据文档, if包括它的条件和内部statement也是一个statement ( https://docs.oracle.com/javase/tutorial/java/nutsandbolts/if.html – 至少它被称为if-statement遍及整个文档) 例如: if (b){ System.out.println(“B”); } 是一份statement 。 但是,当我们要用另一个语句替换现有语句时,它不应该触及整体逻辑,对吧? 假设我们用上面的if-statement替换(Expression) – statement : Boolean a = false; Boolean b = false: if (a) if (b){ System.out.println(“A and B”); } else System.out.println(“!A”); Java编译器将解释代码示例如下(完整的大括号用于解释): Boolean a = false; Boolean b = false: […]

用状态/策略模式替换if / else逻辑

我已经阅读过以前的堆栈交换,用Java替换条件逻辑,例如带有状态/策略模式的IF / ELSE,但我不确定我的案例是否适合替换。 以下是我看到的结果 – Java中的if语句的长列表以及将许多’if else’语句转换为更干净的方法 我本质上是在编写一个文件下载管理器,这些是我的IF / ELSE结构: 如果文件及其zip文件存在,则将zip文件移动到zip文件目录并读入文件 如果zip文件存在,则解压缩文件并将zip文件移动到zip文件目录并读入文件 如果zip文件不存在,则从指定的URL下载,然后解压缩并读入文件并将zip文件移动到指定的目录。 如果URL中不存在zip文件,则创建空白文件并将其写入磁盘。 基本上我理解你将这四个条件作为哈希映射中的键,然后值是需要发出的“命令”。 但是我相信你仍然需要一个If / Else来决定在作为输入给出的键上调用什么动作。 所以我没有看到好处。 有人可以解释一下吗?

在java中跟随if-else梯的更好的替代方法是什么?

情况:我正在检查文件名,文件名存储在名为str的String变量中,并根据if语句中检查的条件设置名为mailType的变量的值。 if(str.contains(“template”)) { if(str.contains(“unsupported”)) mailType=”unsupported”; else if(str.contains(“final_result”)) mailType=”final_result”; else if(str.contains(“process_success”)) mailType=”Process Success”; else if(str.contains(“receive”)) mailType=”Receive”; else if(str.contains(“sen”)) mailType=”sent”; else if(str.contains(“welcome”)) mailType=”welcome”; else if(str.contains(“manual”)) mailType=”Manual”; } else if(str.contains(“properties”)) { if(str.contains(“unsupported”)) mailType=”unsupported”; else if(str.contains(“final_result”)) mailType=”final_result”; else if(str.contains(“process_success”)) mailType=”Process Success”; else if(str.contains(“receive”)) mailType=”Receive”; else if(str.contains(“sen”)) mailType=”sent”; else if(str.contains(“welcome”)) mailType=”welcome”; else if(str.contains(“manual”)) mailType=”Manual”; } 问题:有没有更好的方法在java中缩短我的代码并且内存友好?

切换似乎比如果慢

我很好奇切switch速度,认为它“非常”快,但我有一个测试用例似乎显示单个开关大约快4, if测试,当我预期(没有坚实的理由)它与1次测试一样快。 这是我用来比较switch的两种方法if : public static int useSwitch(int i) { switch (i) { case 1: return 2; case 2: return 3; case 3: return 4; case 4: return 5; case 5: return 6; case 6: return 7; default: return 0; } } public static int useIf(int i) { if (i == 1) return 2; if […]

为什么此代码不能按预期工作?

我正在编写一个简单的方法,将成绩作为用户的输入并计算成绩点平均值。 这是我的代码: public static double calculateGPA(){ Scanner in = new Scanner(System.in); double totalGradePoints = 0; // total grade points int numClasses = 0; // total classes completed boolean doneInput = false; // returns true when use is done inputting grades System.out.println(“Enter all your grades (A,B,C,D,F) and enter ‘done’ if you are done entering your grades.”); […]

返回If语句内部和外部

这可能是一个相当容易回答的问题,但它一直困扰着我。 如果在if语句中有一个return语句,在一个方法内(在Java语言中),但我在最后添加另一个作为一个全能并且为了避免错误,两个返回值都将在其他如果if语句是真的吗? 一个例子: public int getNumber() { if( 5 > number) { return 5; } return 0; } 结果:方法返回5,然后通过堆栈逻辑,此后不久返回0。 或者,我是否需要使用外部变量,如下所示: int num = 1; public int getNumber() { if( 5 > number) { num = 5; } return num; } 结果:方法将变量num更改为5,然后返回num以供使用。 我想在这种情况下,根据变量的用法,不一定需要return语句。 提前致谢。