黑马程序员技术交流社区
标题:
难道三目不能嵌套太长吗???
[打印本页]
作者:
qq812392675
时间:
2016-2-27 10:34
标题:
难道三目不能嵌套太长吗???
import java.util.Scanner;
class PaiXu{
public static void main(String[] args){
Scanner s = new Scanner(System.in);
int score = s.nextInt();
char a;
if(score<=100&&score>0)
(score>90)?a = 'a:(score>=70)?a = 'b':(score >=60)?a = 'c':a = 'd';
System.out.println(a);
要不然为啥会出错呢
作者:
qq812392675
时间:
2016-2-27 10:38
大师求解
作者:
玉质彼端
时间:
2016-2-27 23:20
我勒个去,脑洞大开, (score>90)?a = 'a:(score>=70)?a = 'b':(score >=60)?a = 'c':a = 'd'; 这是什么鬼!
(条件)?选项1:选项2,这个三目运算符是有返回值的,并且这个返回值一定要被接收的。
例如:
(1)
int score = 100;
char a = (score > 90) ? 'a' : ''; //如果score大于90分,字符变量a被赋予'a'的值,否则赋值为空字符
(2)
public char getChar(int score) {
return (score > 90) ? 'a' : '';
}
然后,针对你的错误,建议使用if-else if - else 流程结构解决:
if (score > 90) {
a = 'a';
} else if (score >= 70) {
a = 'b';
} else if (score >= 60) {
a = 'c';
} else {
a = 'd';
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2