黑马程序员技术交流社区
标题:
这样的语句为什么错误
[打印本页]
作者:
zcy黑马
时间:
2015-5-26 00:23
标题:
这样的语句为什么错误
package my.test;
/*
* Hello12345World
* 大写 : 2个
* 小写 : 8个
* 数字 : 5个
*/
public class Test {
public static void main(String[] args) {
String st = "Hello12345World";
int ucount = 0, lcount = 0, num = 0;
char[] ch = st.toCharArray();
for (int i = 0; i < ch.length; i++) {
(ch[i]<58?num:(ch[i]<98?ucount:lcount))+=1;//之前用的if语句可以,想着用三元运算符就不行了
}
System.out.println(ucount+"***"+lcount+"***"+num);
}
}
复制代码
作者:
zcy黑马
时间:
2015-5-26 00:24
if (ch[i] <58 ) {
num++;
} else if (ch[i] <98) {
ucount++;
} else {
lcount++;
}
复制代码
//这是if原语句
作者:
zcy黑马
时间:
2015-5-26 00:26
...........没加注释,就是看这个字符串里面有多少个大写字母,小写字母,多少个数字的。
作者:
zcy黑马
时间:
2015-5-26 00:34
为什么没有大神给我指导呢??????????太没营养了么??
作者:
forTomorrow
时间:
2015-5-26 11:56
条件表达式不能取代一般的if语句,仅当if语句中内嵌的语句为赋值语句(且两个分支都给同一变量赋值)时才能代替if语句
作者:
zcy黑马
时间:
2015-5-29 00:11
forTomorrow 发表于 2015-5-26 11:56
条件表达式不能取代一般的if语句,仅当if语句中内嵌的语句为赋值语句(且两个分支都给同一变量赋值)时才能代 ...
我搞定了已经,下面这样就可以了。多谢回答
int m = ch[i]<58?num++:(ch[i]<98?ucount++:lcount++))
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2