segment of code:
int x, y = 34, z = 19, w=11;
swtich (x) {
case 1: y += 4;
z -= w;
break;
case 2: w = (x++)*(--y);
break;
case 3: w = (--x)*(++y);
break;
case 4: y -=7;
case 5: z *= 2;
break;
default: w = (++x)*(++y);
}
System.out.println(“x = “ + x + “ y = “ + y + “ z = “ + z + “ w = “ + w);
有人可以帮我解决这个问题吗?
答案 0 :(得分:2)
首先,您忘了将break;
放在CASE 4
上。然后,如果x是局部变量,则忘记初始化它。你打算如何输入x?
public class Main {
public static void main (String[] args) {
int x=0, y = 34, z = 19, w = 11;
x = Integer.parseInt(JOptionPane.showInputDialog(x)); //this is how i input x
switch (x) {
case 1:
y += 4;
z -= w;
break;
case 2:
w = (x++) * (--y);
break;
case 3:
w = (--x) * (++y);
break;
case 4:
y -= 7;
break;
case 5:
z *= 2;
break;
default:
w = (++x) * (++y);
}
System.out.println("x = " + x + "y = " + y + " z = " + z + " w = " + w);
}
}
非法字符:\ 8220或\ 8221:您使用Unicode 8220(又名\ u291c,0x291c,“,左引号)或......复制粘贴代码时通常使用的某种形式...再次键入系统.out.println行特别是引号(“),也许你复制粘贴它,它有不同的形式...有关错误的更多详细信息,请查看this site
答案 1 :(得分:1)
case 4
需要break
(除非您打算将案例4“落到”case 5
。
答案 2 :(得分:1)
您的代码具有智能引号字符(“
),这些字符不是普通引号,并且无法被Java语言识别。
将“
个字符更改为"
。