ホームページ  >  記事  >  Java  >  Javaバイト配列操作コードの解析例

Javaバイト配列操作コードの解析例

coldplay.xixi
coldplay.xixi転載
2020-07-22 16:09:472188ブラウズ

Javaバイト配列操作コードの解析例

バイト配列の重要な点は、メモリのその部分に格納されている各 8 ビット値へのインデックス付きの (高速な) 正確な生のアクセスを提供し、それらのバイトを操作できることです。各ビットを制御する演算。欠点は、コンピュータが各エントリを個別の 8 桁の数字としてしか認識しないことです。これはプログラムが扱っているものである可能性があります。または、独自の長さを追跡し、時間に応じて増加する文字列のような、より強力なデータ型を好む場合もあります。必要な 、またはビット単位の表現に関係なく、たとえば 3.14 を格納できる float です。データ型として、長い配列の先頭付近でデータを挿入または削除することは、作成または必要なギャップを埋めるために後続のすべての要素をシャッフルする必要があるため、非効率的です。

Java はバイト配列を操作するメソッドを正式に提供します - メモリ ストリーム (バイト配列ストリーム) ByteArrayInputStream、ByteArrayOutputStream

ByteArrayOutputStream - バイト配列マージャー

/**
  * 将所有的字节数组全部写入内存中,之后将其转化为字节数组
  */
  public static void main(String[] args) throws IOException {
    String str1 = "132";
    String str2 = "asd";
    ByteArrayOutputStream os = new ByteArrayOutputStream();
    os.write(str1.getBytes());
    os.write(str2.getBytes());
    byte[] byteArray = os.toByteArray();
    System.out.println(new String(byteArray));
  }

ByteArrayInputStream—バイト配列インターセプト

/**
  *  从内存中读取字节数组
  */
  public static void main(String[] args) throws IOException {
    String str1 = "132asd";
    byte[] b = new byte[3];
    ByteArrayInputStream in = new ByteArrayInputStream(str1.getBytes());
    in.read(b);
    System.out.println(new String(b));
    in.read(b);
    System.out.println(new String(b));
  }

関連学習の推奨事項: Java ビデオ チュートリアル

以上がJavaバイト配列操作コードの解析例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はjb51.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。