gpt4 book ai didi

Java 数组输出令人困惑

转载 作者:行者123 更新时间:2023-12-02 11:15:40 26 4
gpt4 key购买 nike

取自此网站:https://www.journaldev.com/770/string-byte-array-java

package com.journaldev.util;

public class ByteArrayToString {

public static void main(String[] args) {
byte[] byteArray = { 'P', 'A', 'N', 'K', 'A', 'J' };
byte[] byteArray1 = { 80, 65, 78, 75, 65, 74 };

String str = new String(byteArray);
String str1 = new String(byteArray1);

System.out.println(str);
System.out.println(str1);
}
}

为什么输出是:

PANKAJ

PANKAJ

我不明白为什么不是:

PANKAJ

806578756574

最佳答案

byte[] bytes 构造函数将解析包含的数据,正如 @khelwood 所说,它的注释是,数字是字母的 ASCII 表示形式,因此 80 代表“p”字符。

如果你想要你想要的输出,你应该使用

String[] srtArray = {"P","A"...}
String[] srtArray = {"80","65"...}

对于{ 'P', 'A'...},它们已经被编码,但数字将被转换,因为它们被声明为数字并且不是字符串。 “80”与 80 不同。

关于Java 数组输出令人困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50300066/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com