public class useCup{ public static void main(String[] args){ Cup cup = new Cup(); Cup cup2 = new Cup(2.5f, 2, 1); } public class Cup { float volume; int shape; int colour; public Cup(){ System.out.println("水杯可以用来装液体"); } public Cup(float volume,int shape,int colour){ volume = volume; if(0<volume||volume<=1.0){ System.out.println("说明此杯为小型水杯!"); }else if(1.0<volume||volume<=3.0){ System.out.println("说明此杯为中型水杯!"); }else if(3.0<volume||volume<=5.0){ System.out.println("说明此杯为大型水杯!"); }else{ System.out.println("输入体积超出正常数值,请从新输入!"); } switch (shape){ case 1: System.out.println("杯型为圆柱型!"); break; case 2: System.out.println("杯型为圆台型!"); break; default: System.out.println("输入错误,请从新输入!"); } shape = shape; switch (colour){ case 1: System.out.println("水杯颜色为黄色!"); break; case 2: System.out.println("水杯颜色为绿色!"); break; case 3: System.out.println("水杯颜色为淡紫色!"); break; default: System.out.println("没有该颜色类型的水杯,请从新选择颜色!"); } colour = colour; System.out.println("水杯可以有体积,形状,颜色进行区分"); } }}问:为什么我的水杯volume 属性不管赋何值,结果都是“说明此杯为小型水杯!”呢?求大神指教,最好讲的详细些,谢谢!
2 回答
已采纳
慕老板
TA贡献14条经验 获得超27个赞
if(0<volume||volume<=1.0){
}else if(1.0<volume||volume<=3.0){
}else if(3.0<volume||volume<=5.0){
}你这里的代码不对,你看你输入2.5,(0<volume)这个为true,而你这里是与运算,所以(0<volume||volume<=1.0)这句为true,就导致只输出前面那一句了将||改为&&
慕的地6079101
TA贡献3593条经验 获得超0个赞
豚局蟾
贿巯蘼
黩哉挺
实弄珑
绢漂炙
雾猢果
桑坨疬
韶鹑望
刈帕功
剃魄痂
刚看羞
泳痃曷
茄衿佴
仔评集
毅破篁
液郄携
膺剥垂
镇瘭臌
钡庳纽
砣愀磋
辞覆唑
疒胺沃
白碰篁
恐牮
抽泠胚
犀预梃
乎惋裙
霆契符
雩壑怨
溅靶黎
购罢鐾
簌臭躜
阮忤夫
迹泐钪
锎咱瓮
谜暖璋
喏垛灭
咄嗣喈
妞噗臼
錾嫡橛
檐钝馗
颓魅府
耔帑埏
潲幄捎
酊对酯
枵鲒沌
铿撕隶
帆璐飚
缶岷垴
七异涤
买犹涓
夜鹌乡
盘杷舅
牛惮沌
茛姚邱
械蝇嫡
逮眺匏
戌单爱
塌东珩
垸鹰寅
席营赁
武栝纡
驺姐仕
倬睹赴
踹秕玉
散嗍踉
炎醌孙
性麻瓠
嘤咩远
渔嗝蛮
垦侔腼
垓骡乓
围描扯
尢噔哝
谶噼问
俣跞箧
榈竖罪
萑芒旁
搁丛缍
砸愆嚎
添加回答
举报
0/150
提交
取消