A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 邵震 高级黑马   /  2013-4-6 09:35  /  1272 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 邵震 于 2013-4-6 12:02 编辑

/*
  1. 题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。   
  2. */
  3. class Java0406d1
  4. {
  5.         public static void main(String[] args)
  6.         {
  7.                 People lisi=new People("李四","基础班",60,70,80);
  8.                 lisi.show();
  9.         }
  10. }

  11. class People
  12. {
  13.         private String name;
  14.         private String banji;
  15.         private int shuxue;
  16.         private int yuwen;
  17.         private int yingyu;
  18.         public People(String name,String banji,int shuxue,int yuwen,int yingyu)
  19.         {
  20.                 this.name=name;
  21.                 this.banji=banji;
  22.                 this.shuxue=shuxue;
  23.                 this.yuwen=yuwen;
  24.                 this.yingyu=yingyu;
  25.         }
  26.         void show()
  27.         {
  28.                 System.out.println("我叫:"+name+",来自:"+banji+",数学成绩:"+shuxue+",语文成绩:"+yuwen+",英语成绩:"+yingyu+".");
  29.         }
  30. }
复制代码
原题不是这样  我自己的改的,可是改完了 我就不知道该怎么转成字符了
知道大概是在给People的构造函数初始化的时候该的 具体怎么弄不知道了

我想要的结果是:
我叫:李四,来自:基础班,数学成绩:B,语文成绩:B,英语成绩:B.

评分

参与人数 1技术分 +1 收起 理由
张熙韬 + 1

查看全部评分

3 个回复

倒序浏览
void show()
        {
                System.out.println("我叫:"+name+",来自:"+banji+",数学成绩:"+shuxue+",语文成绩:"+yuwen+",英语成绩:"+yingyu+".");
               
        }
用if判断...
在person类中定义一个函数
public void  Socer(int socer)
{
if(socer>=90) System.out.prinln("A");

else if(socer>=60)  SOP(B);
else SOP(C);
}
回复 使用道具 举报
  1. public class Text1

  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 People lisi=new People("李四","基础班",60,70,80);
  6.                 lisi.show();
  7.         }
  8. }

  9. class People
  10. {
  11.         private String name;
  12.         private String banji;
  13.         private int shuxue;
  14.         private int yuwen;
  15.         private int yingyu;
  16.         private String sx;
  17.         private String yw;
  18.         private String yy;
  19.         public People(String name,String banji,int shuxue,int yuwen,int yingyu)
  20.         {
  21.                 this.name=name;
  22.                 this.banji=banji;
  23.                 this.shuxue=shuxue;
  24.                 this.yuwen=yuwen;
  25.                 this.yingyu=yingyu;
  26.                
  27.                 if(shuxue>=90)
  28.                
  29.                                 sx="A";
  30.                         else if(shuxue>=60)
  31.                                 sx="B";
  32.                         else
  33.                                 sx="C";
  34.                 if(yuwen>=90)
  35.                     
  36.                             yw="A";
  37.                     else if(yuwen>=60)
  38.                             yw="B";
  39.                     else
  40.                             yw="C";
  41.                 if(yingyu>=90)
  42.                     
  43.                                 yy="A";
  44.                 else if(yingyu>=60)
  45.                                 yy="B";
  46.                 else
  47.                                 yy="C";
  48.         }
  49.         
  50.         void show()
  51.         {
  52.                         
  53.                                 System.out.println("我叫:"+name+",来自:"+banji+",数学成绩:"+sx+",语文成绩:"+yw+",英语成绩:"+yy+".");
  54.         }
  55. }
复制代码
小弟才疏学浅 虽然实现了 但是感觉代码好麻烦  希望谁能优化后贴出来

评分

参与人数 1技术分 +1 收起 理由
张熙韬 + 1

查看全部评分

回复 使用道具 举报
abstract  class People{
        String name;
        int age;
        public People(String name,int age){
                this.name=name;
                this.age=age;               
        }
        abstract void showMessage();
}
class Student extends People{

        String className;
        double Math,Chinese,English;
        char scoreFlag;
        public Student(String name,int age,String className,double Math,double Chinese,double English){
                super(name,age);
                this.className=className;
                this.Math=Math;
                this.Chinese=Chinese;
                this.English=English;               
        }
        @Override
        void showMessage() {
                // TODO Auto-generated method stub
                System.out.println("姓名:"+name+"\t年龄:"+age+"\t\t班级:"+className);
            System.out.println("数学成绩:"+Math+"\t语文成绩:"+Chinese+"\t英语成绩:"+English);
        }
        char flagGrade(int number){
                char flag;
                switch(number){
            case 10:
            case 9:                   
                    flag='A';          
                    break;
            case 8:
            case 7:
                    flag='B';            
                    break;
            case 6:
            case 5:
                    flag='C';                     
                    break;
            default:
             flag='D';
                     
                }
            
                return flag;
        }
       
        void showGrade(){
            int math,chinese,english;
            math=(int)Math/10;
            chinese=(int)Chinese/10;
            english=(int)English/10;
            System.out.println("数学等级:\t"+flagGrade(math));
            System.out.println("中文等级:\t"+flagGrade(chinese));
            System.out.println("英文等级:\t"+flagGrade(english));
        }
       
}

public class StudentDemo {

        /**
         * @param args
         */
        public static void main(String[] args) {
                // TODO Auto-generated method stub

                Student zhangsan=new Student("张三",20,"冲刺班",60,50,90);
                zhangsan.showMessage();
                zhangsan.showGrade();
        }

}

评分

参与人数 1技术分 +1 收起 理由
张熙韬 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马