判断输入的整数的奇偶性

 package 条件循环语句;

import java.io.IOException;

public class 判断奇偶 {

    public static void main(String[] args) throws IOException{



        byte[] arr = new byte[10];                             
        System.out.println("请输入一个整数:");               
        int x =System.in.read(arr);                     
        String str = new String(arr,0,x);        
        System.out.println(str);                          //提取输入的内容(字符串类型)




        int y = Integer.parseInt(str);       //将str转换为数值,提取出输入的数值  
        System.out.println(y);



        if(y%2==0){                                   //判断y的奇偶
             System.out.println("该数是偶数");
         }else{
             System.out.println("该数是奇数");
         }                                          


        }



    }

本人初学java,有哪位大神帮我看一下这个代码怎么不行

String str = new String(arr, 0, x-1); 你没有发现10后面有一个换行符么。。。所以长度减一就行了

Exception in thread "main" java.lang.NumberFormatException: For input string: "10
"
你看,换行符在10后面,双引号被换行了

你接收用户输入字符的时候直接用scanner就行了

// byte[] arr = new byte[10];

System.out.println("请输入一个整数:");
// System.out.println(System.in.read(arr));
// int x =System.in.read(arr);

// String str = new String(arr,0,x); //提取输入的内容(字符串类型)
Scanner in = new Scanner(System.in);
String input = in.next();//获取输入
System.out.println("___"+input);