Java System.out.println(-1)的输出将是整数还是字符串?

Java System.out.println(-1)的输出将是整数还是字符串?,java,Java,当我们写作时: System.out.println(-1); < P> java是否认为1是整数或字符串?< /p> < p>查看:Stry.Out.Print可以接受很多参数,并且因为您通过1,这有int类型,那么在您的情况中调用的方法是公共无效的Print(x)./P> 不过在幕后,-1会根据您平台的默认字符编码转换为字符串,然后转换为字节表示形式,然后再发送到控制台。如果您遵循,您会发现: 公共无效打印输入x 打印一个整数,然后终止该行。此方法的行为就像调用printint,然后调用p

当我们写作时:

System.out.println(-1);
< P> java是否认为1是整数或字符串?< /p> < p>查看:Stry.Out.Print可以接受很多参数,并且因为您通过1,这有int类型,那么在您的情况中调用的方法是公共无效的Print(x)./P> 不过在幕后,-1会根据您平台的默认字符编码转换为字符串,然后转换为字节表示形式,然后再发送到控制台。

如果您遵循,您会发现:

公共无效打印输入x

打印一个整数,然后终止该行。此方法的行为就像调用printint,然后调用println一样

然后文件上说:

string.valueOfint生成的字符串根据平台的默认字符编码转换为字节,这些字节完全按照writeint方法的方式写入

因此,它先将整数转换为字符串,然后再将其转换为字节并打印出来

< P> java是否认为1是整数还是字符串?< /P> 都不是-1是基本整型文字

为什么-1是一个基本的int文本

int:默认情况下,int数据类型是32位带符号2的补码整数,最小值为-231,最大值为231-1

此外:

整数文字可以用以下数字系统表示:

十进制:以10为基数,其数字由数字0到9组成;这是你每天使用的数字系统 十六进制:以16为基数,其数字由数字0到9和字母A到F组成 二进制:基数2,其数字由数字0和1组成。您可以在JavaSE7和更高版本中创建二进制文本
请看

实际上,从技术角度讲,两者都不是。Integer是java中特定于Integer对象的,正如在ArrayList中一样,Integer对象与int不同。print语句将参数视为int


为什么会是字符串?一个整数。当然。你打电话的时候是整数。它被转换成一个字符串以便打印出来。阅读一些关于重载的内容,再多了解一下为什么-1是一个原语就好了,只是为了说明它被限制在一个非常小的数字子集内。为了减轻人们对是否定的还是所有数字的困惑,你的编辑要好得多:现在我更喜欢这个答案了。
ArrayList<Integer> integers = new ArrayList<Integer> ();
integers.add(FooIntegerObject);
System.out.print(-1); //is an int
System.out.print("-1"); //is a String
System.out.print(integers(0).toString()); //is an Integer