java中的nextInt()方法

Ash*_*ahu 2 java

在java中,当我在Netbeans Ide上工作时,我看到了nextInt(int radix)的方法.我试图实现这个并传递一个整数,但这给出了InputMismatchException的一个例外.我的代码如下:

import java.util.*;
import java.lang.*;
public class HelloWorld{
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt(2);
System.out.println(n);
}
Run Code Online (Sandbox Code Playgroud)

我想知道什么是基数参数?另外,它的用途是什么?

ern*_*t_k 5

基数是解释数字的基础.您可以使用它来使该nextInt方法将数字解释为非小数.

例如,以下内容需要二进制数:

s.nextInt(2)
> 11111 //input
31 //result in decimal
Run Code Online (Sandbox Code Playgroud)

这需要一个十六进制数:

s.nextInt(16)
> abc12 //input
703506 //result in decimal
Run Code Online (Sandbox Code Playgroud)

您还有兴趣看到使用基数的其他方法,例如Integer.toString(int,int),Integer.parseInt(String,int),它们以指定的基数格式化/解析数字(提供类似的方法Long,Short等)