字符串不能转换为字符

时间:2015-12-02 05:15:57

标签: java

我不明白为什么我的程序不允许我将变量转换为char。任何帮助将不胜感激!!!根据我的考试成绩等级或测试成绩键盘输入,我总共得到7个错误。

public class lab13
{
   public static void main(String[] args)
   {
      // declare variables
      int average;
      int sum;
      int i;
      char grade;
      int testScore;

      //Create a Scanner Object
      Scanner keyboard= new Scanner(System.in);

      sum = 0;
      i = 1;
      while (i <= 4)
      {
         System.out.print("Enter a test  score:");
         testScore=keyboard.nextLine();
         if (testScore < 60)
         {
            grade =(F);
         }
         else
         {
            if (testScore < 70)
            {
               grade =("D");
            }
            else
            {
               if (testScore < 80)
               {
                  grade =("C");
               }
               else
               {
                  if (testScore < 90)
                  {
                     grade =("B");
                  }
                  else
                  {
                     grade =("A");
                  }
               }
            }
         }
         System.out.print("Test score:"+testScore);
         System.out.print("Letter grade:"+grade);
         sum = sum + testScore;
         i = i + 1;
      }
      average = sum / 4;
      System.out.print("Test score average = " + average);
   } // close main
} // close lab13

4 个答案:

答案 0 :(得分:0)

char常量可以用''表示

grade = 'F';

grade = 'D';

grade = 'C';

grade = 'B';

grade = 'A';

答案 1 :(得分:0)

char只能包含一个字符,该字符使用单引号定义,如'C'

答案 2 :(得分:0)

insted of keyboard.nextLine()使用keyboard.nextInt(),并且对于字符值赋值,直接使用具有单个配额的字符,如&#39; A&#39;而不是(&#34; A&#34;)

答案 3 :(得分:0)

import java.util.Scanner;



public class lab13
{
   public static void main(String[] args)
   {
      // declare variables
      int average;
      int sum;
      int i;
      char grade;
      int testScore;

      //Create a Scanner Object
       Scanner keyboard= new Scanner(System.in);

       sum = 0;
       i = 1;
       while (i <= 4)
      {
         System.out.print("Enter a test  score:");
         testScore=keyboard.nextInt();
         if (testScore < 60)
         {
            grade ='F';
         }
         else
         {
            if (testScore < 70)
            {
               grade ='D';
            }
             else
             {
                if (testScore < 80)
               {
                  grade ='C';
                }
                else
                {
                     if (testScore < 90)
                     {
                      grade ='B';
                      }
                     else
                   {
                     grade ='A';
                  }
               }
            }
         }
         System.out.println("Test score:"+testScore);
         System.out.println("Letter grade:"+grade);
         sum = sum + testScore;
          i = i + 1;
       }
         average = sum / 4;
         System.out.print("Test score average = " + average);
     } // close main
   } // close lab13