以下java代码在Java 1.7中执行时没有出错
public static void main(String[] args) {
int x = 5;
switch(x) {
case 4:
int y = 3423432;
break;
case 5: {
y = 33;
}
}
}
java是如何发现y是一个int的,因为声明从未运行过。在case语句中不使用大括号时,case语句中的变量声明是否被限定为开关语句级别?
我无法理解switch语句是如何工作的。下面的代码即使a的值是4也能正常工作。我知道switch语句中的每个case都不是一个具有自己的局部作用域的块,但这是否意味着即使a不等于2也会声明变量x?
int a = 2;
switch(a){
case 2:
int x = 4;
case 3:
x = 5;
case 4:
x = 7;
}
我试图在一个案例类中使用字符串,比如java语句switch(someString)。但是scala match语句总是解析为第一个块。
whichTopic match {
case accounts ⇒ {
logger.info("!!!! ---- FOR ACCOUNTS --- !!! ")
}
case users ⇒ {
logger.info("!!!! ---- FOR USERS --- !!! ")
// TODO : Handle errors from the consumer
}
}
即使w
我有这样的功能:
$(document).ready(function () {
$('.SelectID').click(function (e) {
var output;
var select = $(this);
switch (select.text()){
case "FirstOption":
var a = ("1");
break;
case "SecondOptio
我是学习java的新手,在这个例子中,我尝试模拟掷骰子游戏。
当我不初始化myPoint变量时会出现编译器错误,因此在switch构造之前将其设置为零。
我想了解为什么我需要初始化myPoint变量,当它的值被设置为sumOfDice在声明之后的值时,与 gameStatus变量不同?
/***** roll dice game ****/
//some code here..
private enum Status { CONTINUE, WON, LOST };
// plays one game of craps
public static void mai
我正在尝试根据当前场景的索引读取不同的文本文件(用Unity语言)。因此,我决定使用如下的开关语句:
void MyReadString()
{
Scene currentScene = SceneManager.GetActiveScene(); // Unity command to get the current scene info
int buildIndex = currentScene.buildIndex; // Unity command to get the current scene number
string path = string.Empt
考虑以下代码:
switch (doSomething()) {
case "1":
return 1;
case "2":
return 2;
default:
console.log(RETURNED_VALUE); // I want here to access the value returned from doSomething
}
我希望打印从doSomething返回的值,而不首先将其存储在变量中。有可能吗?(类似于this)
谢谢
作为学校的作业,我需要用java中的paintcomponent绘制一个苹果树。用户必须能够从下拉菜单中选择颜色,这将改变苹果的颜色。
现在我被困在那里了。我尝试在开关箱中创建颜色,但这会导致一些错误。
下面您看到的不是整个代码,而是苹果所必需的部分。我认为出于某种原因,java不执行开关情况。
提前感谢!
// get the values from the dropbox
private void jComboBoxKleurActionPerformed(java.awt.event.ActionEvent evt)
{
我正在设计一个简单的Flash游戏,并遇到了这个错误。我不知道如何在actionscript中这样做,希望得到任何帮助。
基本上,我有一个switch语句,它根据每种情况创建不同类型的对象(因为我不希望重复相同的10行代码),而且我得到了一个“名称空间内部定义存在冲突”编译器错误,我想我理解为什么。
switch(power){
case 1:
var Pow:objectOne = new objectOne();
break;
case 2:
var Pow:objectTwo = new objectTwo();
我想要实现的是:
switch(flag)
{
case 1:
var query=from w in db.someTable
select w;
break;
case 2:
query=from w in db.someTable
where w.id==someID
select w;
break;
case default:
break;
}
我想将数组长度与一些int值进行比较。我可以用if else来做,但是如何用switch来做,因为switch是快速的,我想在我的项目中使用它。
switch (array.length) {
case array.length <= 11: // how to do this
break;
default:
break;
}
使用if else,我可以这样做:
if (array.length <= 5) {
//my is code here
}
else if (array.length <= 15) {
Java编译器如何处理下面的转换块?'b‘变量的作用域是什么?
请注意,'b‘变量仅在switch语句的第一个分支中声明。尝试在第二个分支中声明它也会导致“重复局部变量”编译错误。
int a = 3;
switch( a ) {
case 0:
int b = 1;
System.out.println("case 0: b = " + b);
break;
case 1:
// the following line does not compile: b may
我正在创建一个switch语句,它为每种情况调用不同的方法。请注意,这些方法都采用完全相同的参数,因此我发现自己重复了代码。也不可能组合这些方法,因为它们都实例化了唯一的xml支持实例。
switch(account){
case "25":
getAccount25(name, address, location, accountID, business)
break
case "26":
getAccount26(name, address, l
为什么,在Java中,变量的作用域仅限于开关块,而不是case块。例如,
// Scope limited to a switch block
switch (number) {
case 1:
String result = "...";
break;
case 2:
result = "...";
break;
在上面的例子中,结果只需要声明一次。如果您声明了它两次,那么您将收到一条Duplicate local variable消息。
我的问题是:程序如何知道您已经声明了result if number = 2?(它不会落入
在以下代码中:
private static void example() {
String inputString = "test";
switch (inputString) {
case "test":
String outputString = "The string said test";
case "not test":
String outputString = "The string did not say te
我有一个类为我的应用程序声明常量
public class GroupConstants {
..
public static final int INTEGER_VALUE = 1;
public static final int LONG_VALUE = 2;
public static final int STRING_VALUE = 3;
..
}
在代码中有一组switch语句
private static Object getValue(String stringValue, Parameter parameter) throws Inval
如何使用开关case语句来创建在开关case语句之外有效的变量/常量。如果没有办法做到这一点,我还能做些什么来达到同样的效果,即创建受条件约束的变量,并使其在“全局”或更高范围内可访问?
var dogInfo = (3, "Fido")
switch dogInfo {
case(var age, "wooff"):
println("My dog Fido is \(age) years old")
case (3, "Fido"):
var matchtrue = 10 -->
在pick中,有一个case命令,其功能类似于switch命令,基本上是执行嵌套的,如果是,则执行else命令。代码如下:
begin case case a=4;do something case b=5 or c=6;do something case y=x and f=z;do something case 1;do something end case如果其中任何条件为真,则属于这种情况。我知道PHP有switch命令,但这仅限于一个变量的值。是否有一种方法可以在PHP或javascript中对上述内容进行编码,而不需要一堆类
我用Java写了这个开关案例程序。然而,while循环并没有中断。代码如下: import java.util.Scanner;
public class exam001 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int marks;
while(true) {
System.out.println("This is a gade checker program");
我不认为我的switch语句对我的代码做了什么,我是java的新手,所以我不知道如何在while loop中使用switch语句。我试图获取输入的每个等级/学分,以便找到GPA,但是我为分数添加了一个System.out.print,它说无论输入什么,它都值0。请帮帮我!
package exercises;
import java.text.DecimalFormat;
import javax.swing.JOptionPane;
import javax.swing.JTextArea;
public class GPA_Calculator {
public static vo
目前,在c#7 (15.3.4版)中,下面的代码对编译是有效的,但这两个变量都是合法不可用的。
switch(fruit)
{
case Apple apple:
case Orange orange:
// impossible to use apple or orange
break;
case Banana banana:
break;
}
如果您尝试使用它们,您会得到熟悉的错误,变量在访问之前可能不会被初始化。
有时,在模式匹配中,您并不关心确切的类型,只要该类型属于您想要的类别。这里只举苹果和橘子为例。
List<Fruit>
我希望能够在依赖于用户选择的循环中声明selenium驱动程序。我希望这个驱动程序被称为驱动程序,不管它是哪种类型的,这样我就可以将它用于任何东西,而不是为IE和Firefox单独设置一组代码。我希望这是有意义的,我对Java非常陌生。
switch (browserId){
case 1:
FirefoxDriver driver = new FirefoxDriver();
case 2:
InternetExplorerDriver driver = new InternetExplorerDriver();
de
import java.io.PrintStream;
import java.util.Scanner;
public class BasicCalculator
{
public static void main(String[] args)
{
int ADDITION = 1;
int SUBTRACTION = 2;
int MULTIPLICATION = 3;
int DIVISION = 4;
int EXIT = 5;
Scanner keyboard = new Scanner(System.in);
in