我遇到了char的问题

时间:2012-12-13 11:43:28

标签: java netbeans char

我遇到问题,因为net-beans接受一个角色,然后说这个人是和hr工资工人或每月支付任何帮助都会得到一个带有char的行的错误

import java.util.Scanner;

public class Infromation {

    public static void main(String [] args){

        Scanner input=new Scanner(System.in);
        System.out.print("Enter employee num");
        int e_num=input.nextInt();
        System.out.print("Enter employee first name");
        String e_fname=input.next();
        System.out.print("Enter employee surname");
        String e_sname=input.next();
        System.out.print("Enter employee code C,H and F");
        char e_code=input.next();

4 个答案:

答案 0 :(得分:6)

char e_code=input.next();

Scanner.next()返回一个String。

如果你想让角色超出Scanner.next():

char e_code = input.next().charAt(0);

答案 1 :(得分:2)

使用

char e_code=input.next().charAt(0);
                        ^^^^^^^^^^

而不是

char e_code=input.next();

答案 2 :(得分:0)

使用

Char e_code=input.next().charAt(0);

获取字符输入。

答案 3 :(得分:0)

您应该创建一个方法来支持它,因为它可能有各种问题。

public static char stringToChar(String value) {

  if(value == null) {
     throw new NullPointerException("stringToChar expect a not null value of argument [value]");
  }

  char[] charArray = value.toCharArray();

  if(charArray.length == 0) {
     return '\0';  // Empty 
     // or throw new IllegalStateException("stringToChar  expect a String that is not empty");
  }

  if(charArray.length == 1) {
     return charArray[0];
  }

  throw new IllegalStateException("stribtToChar expect a single Character string input:[" + value + "]");
}