最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java實(shí)現(xiàn)字節(jié)數(shù)組轉(zhuǎn)int(IEEE754標(biāo)準(zhǔn))的完整指南

 更新時(shí)間:2026年05月27日 08:43:33   作者:加號(hào)3  
在計(jì)算機(jī)科學(xué)中,IEEE 754 標(biāo)準(zhǔn)是浮點(diǎn)數(shù)表示的基石,本文將從 IEEE 754 的底層結(jié)構(gòu)出發(fā),結(jié)合 Java 平臺(tái)的特性,系統(tǒng)探討字節(jié)數(shù)組到 int 的轉(zhuǎn)換機(jī)制、IEEE 754 的語義映射、字節(jié)序的影響以及工程實(shí)踐中的關(guān)鍵考量

在計(jì)算機(jī)科學(xué)中,IEEE 754 標(biāo)準(zhǔn)是浮點(diǎn)數(shù)表示的基石,它定義了單精度(32 位)和雙精度(64 位)浮點(diǎn)數(shù)的二進(jìn)制格式。然而,標(biāo)準(zhǔn)本身并未限定數(shù)據(jù)在內(nèi)存中的字節(jié)排列順序——這就引出了字節(jié)序(Endianness)的問題。在 Java 中將字節(jié)數(shù)組轉(zhuǎn)換為 int(或 float),本質(zhì)上是在處理"跨邊界的數(shù)據(jù)語義重建"。本文將從 IEEE 754 的底層結(jié)構(gòu)出發(fā),結(jié)合 Java 平臺(tái)的特性,系統(tǒng)探討字節(jié)數(shù)組到 int 的轉(zhuǎn)換機(jī)制、IEEE 754 的語義映射、字節(jié)序的影響以及工程實(shí)踐中的關(guān)鍵考量。

一、IEEE 754 標(biāo)準(zhǔn):浮點(diǎn)數(shù)的二進(jìn)制語義

IEEE 754-1985(及后續(xù)修訂版)是浮點(diǎn)數(shù)運(yùn)算的國際標(biāo)準(zhǔn),它不僅是硬件實(shí)現(xiàn)的規(guī)范,更是跨平臺(tái)數(shù)據(jù)交換的通用語言。理解其結(jié)構(gòu),是掌握字節(jié)數(shù)組轉(zhuǎn)換的前提。

1. 單精度浮點(diǎn)數(shù)(32 位)的三段式結(jié)構(gòu)

一個(gè) float 類型的 32 位二進(jìn)制被劃分為三個(gè)語義區(qū)域:

  • 符號(hào)位(Sign,1 位)
  • 最高位(第 31 位)表示數(shù)值的正負(fù)。0 為正,1 為負(fù)。這一設(shè)計(jì)使得浮點(diǎn)數(shù)的符號(hào)判斷與整數(shù)相同,可通過簡單的位測(cè)試完成。
  • 指數(shù)域(Exponent,8 位)

采用偏移碼(Bias)表示,偏移量為 127。實(shí)際指數(shù)值為存儲(chǔ)值減去 127。這種表示法的好處是:

  • 指數(shù)可正可負(fù),無需額外符號(hào)位
  • 便于硬件比較和排序(指數(shù)大的數(shù)絕對(duì)值通常更大)
  • 保留了全 0 和全 1 的特殊編碼空間

例如,存儲(chǔ)值 128 表示實(shí)際指數(shù) 1(2¹),存儲(chǔ)值 126 表示實(shí)際指數(shù) -1(2?¹)。

尾數(shù)域(Mantissa/Significand,23 位)

存儲(chǔ)有效數(shù)字的小數(shù)部分,隱含最高位的 1(規(guī)范化數(shù))或 0(非規(guī)范化數(shù))。23 位尾數(shù)結(jié)合隱含的整數(shù)位,提供約 7 位十進(jìn)制有效數(shù)字的精度。

2. 特殊值的編碼約定

IEEE 754 定義了幾種特殊狀態(tài):

  • 零:指數(shù)和尾數(shù)全為 0,符號(hào)位區(qū)分 +0 與 -0
  • 無窮大:指數(shù)全為 1,尾數(shù)全為 0,符號(hào)位區(qū)分正負(fù)
  • NaN(Not a Number):指數(shù)全為 1,尾數(shù)非 0,用于表示非法運(yùn)算結(jié)果
  • 非規(guī)范化數(shù):指數(shù)全為 0,尾數(shù)非 0,用于表示極接近零的數(shù),防止下溢時(shí)突然歸零

這些特殊值在字節(jié)數(shù)組轉(zhuǎn)換時(shí)必須被完整保留語義,任何位模式的改變都可能導(dǎo)致數(shù)值含義的徹底扭曲。

二、字節(jié)序:內(nèi)存排列的隱形契約

字節(jié)序是理解字節(jié)數(shù)組轉(zhuǎn)換的核心障礙。同樣的 32 位數(shù)據(jù),在不同架構(gòu)的內(nèi)存中呈現(xiàn)不同的字節(jié)序列。

1. 大端序(Big-Endian)

高位字節(jié)存儲(chǔ)在低地址。32 位值 0x12345678 在內(nèi)存中排列為:

地址+0: 0x12
地址+1: 0x34
地址+2: 0x56
地址+3: 0x78

大端序與人類閱讀習(xí)慣一致(從左到右,高位在前),因此在網(wǎng)絡(luò)協(xié)議(TCP/IP)和文件格式(Java 類文件、JPEG)中被廣泛采用,也被稱為"網(wǎng)絡(luò)字節(jié)序"。

2. 小端序(Little-Endian)

低位字節(jié)存儲(chǔ)在低地址。同樣的值 0x12345678 排列為:

地址+0: 0x78
地址+1: 0x56
地址+2: 0x34
地址+3: 0x12

小端序在 x86/x64 架構(gòu)的 CPU 中占主導(dǎo)地位,其歷史優(yōu)勢(shì)在于早期硬件加法器從低位開始的自然處理流程。

3. 混合端序與位序

某些架構(gòu)(如 ARM)支持可配置端序,而極少數(shù)遺留系統(tǒng)甚至采用中間混合或位反轉(zhuǎn)順序。此外,還存在"位序"(Bit-endianness)的概念,即單個(gè)字節(jié)內(nèi)位的排列方向,不過在現(xiàn)代系統(tǒng)中通常與字節(jié)序保持一致。

4. Java 的平臺(tái)立場(chǎng)

Java 虛擬機(jī)規(guī)范明確要求采用大端序作為類文件和網(wǎng)絡(luò)數(shù)據(jù)的標(biāo)準(zhǔn)。java.io.DataInputStream 和 java.nio.ByteBuffer 默認(rèn)按大端序解析多字節(jié)值。這一設(shè)計(jì)屏蔽了底層硬件差異,確保了"一次編寫,到處運(yùn)行"的跨平臺(tái)承諾,但也意味著在處理小端序外部數(shù)據(jù)時(shí),開發(fā)者必須顯式進(jìn)行字節(jié)重排。

三、字節(jié)數(shù)組到 int 的語義重建

在 Java 中,"字節(jié)數(shù)組轉(zhuǎn) int"存在兩種截然不同的語義路徑,需根據(jù)業(yè)務(wù)場(chǎng)景明確區(qū)分。

1. 路徑一:原始位模式的直接解釋

將 4 個(gè)字節(jié)按特定字節(jié)序組合為 32 位 int,不涉及任何數(shù)值轉(zhuǎn)換語義。這適用于:

  • 處理原始二進(jìn)制協(xié)議頭
  • 解析文件格式中的標(biāo)志位或長度字段
  • 位操作與掩碼分析

此路徑下,字節(jié)數(shù)組的內(nèi)容被直接視為整數(shù)的二進(jìn)制補(bǔ)碼表示。例如,字節(jié)序列 [0x00, 0x00, 0x00, 0x41](大端序)直接對(duì)應(yīng) int 值 65。

2. 路徑二:IEEE 754 浮點(diǎn)語義的重解釋

將 4 個(gè)字節(jié)按 IEEE 754 標(biāo)準(zhǔn)解釋為 float,再轉(zhuǎn)換為 int 類型。這里的"轉(zhuǎn) int"存在兩種子語義:

  • 子路徑 A:浮點(diǎn)到整數(shù)的數(shù)值轉(zhuǎn)換,將 float 的數(shù)學(xué)值取整或截?cái)酁?int。例如,float 值 3.14f 轉(zhuǎn)為 int 值 3。這種轉(zhuǎn)換涉及精度損失,且需處理溢出(超出 int 范圍的浮點(diǎn)數(shù))和 NaN 的映射策略。
  • 子路徑 B:位模式的類型重解釋,保持 32 位二進(jìn)制模式不變,僅改變 Java 類型系統(tǒng)的解釋方式。即 float 的底層位模式被重新解讀為 int。這在 Java 中可通過 Float.floatToIntBits() 或 Float.floatToRawIntBits() 實(shí)現(xiàn),前者將 NaN 規(guī)范化,后者保留所有 NaN 的原始位模式。

本文標(biāo)題所指的"采用 IEEE 754 標(biāo)準(zhǔn)",核心在于路徑二中的位模式重解釋——它要求嚴(yán)格遵循 IEEE 754 的編碼規(guī)則,確保字節(jié)序列被準(zhǔn)確重建為浮點(diǎn)語義,再通過類型系統(tǒng)映射為 int 位模式。

四、Java 平臺(tái)的轉(zhuǎn)換機(jī)制

1. 標(biāo)準(zhǔn)庫的支持

Java 提供了多層次的 API 支持字節(jié)數(shù)組到數(shù)值的轉(zhuǎn)換:

DataInput 接口DataInputStream 提供了 readInt()、readFloat() 等方法,默認(rèn)按大端序解析。這是處理標(biāo)準(zhǔn)網(wǎng)絡(luò)流的最直接途徑。

ByteBuffer 與 NIOjava.nio.ByteBuffer 是現(xiàn)代 Java 中更靈活的選擇:

  • 可通過 order(ByteOrder) 顯式設(shè)置字節(jié)序
  • 支持直接緩沖區(qū)(Direct Buffer),減少 JVM 堆與原生內(nèi)存間的復(fù)制
  • 提供 getInt()、getFloat()、asIntBuffer()、asFloatBuffer() 等視圖方法

位運(yùn)算手動(dòng)組合

通過移位和或運(yùn)算手動(dòng)組合字節(jié):((bytes[0] & 0xFF) << 24) | ((bytes[1] & 0xFF) << 16) | …。這種方式最底層,性能最優(yōu)(JIT 編譯器可高度優(yōu)化),但代碼冗長且易出錯(cuò)。

2. 類型重解釋的安全邊界

Java 作為類型安全語言,禁止直接的指針類型轉(zhuǎn)換。float 到 int 的位模式重解釋必須通過標(biāo)準(zhǔn) API 完成:

  • Float.intBitsToFloat(int bits):將 int 位模式重解釋為 float
  • Float.floatToIntBits(float value):將 float 轉(zhuǎn)為規(guī)范化的 int 位模式
  • Float.floatToRawIntBits(float value):保留 NaN 的原始位模式,不規(guī)范化
    這些方法是連接 IEEE 754 二進(jìn)制表示與 Java 類型系統(tǒng)的官方橋梁。

五、代碼實(shí)現(xiàn)

/**
     * 字節(jié)數(shù)組轉(zhuǎn)int
     * 采用IEEE 754標(biāo)準(zhǔn)
     *
     * @param bytes
     * @return float
     */
    public int bytesToInt(byte[] bytes) {
        // 獲取字節(jié)數(shù)組轉(zhuǎn)化成的2進(jìn)制字符串
        String binaryStr = bytesToBinaryStr(bytes);
        // 符號(hào)位S
        Long s = Long.parseLong(binaryStr.substring(0, 1));
        // 指數(shù)位E
        Long e = Long.parseLong(binaryStr.substring(1, 9), 2);
        // 位數(shù)M
        String length = binaryStr.substring(9);
        float m = 0, a, b;
        for (int i = 0; i < length.length(); i++) {
            a = Integer.valueOf(length.charAt(i));
            b = (float) Math.pow(2, i + 1);
            m = m + (a / b);
        }
        Float f = (float) ((Math.pow(-1, s)) * (1 + m) * (Math.pow(2, (e - 127))));
        return (int) (f * 100);
    }
    /**
     * 將字節(jié)數(shù)組轉(zhuǎn)換成2進(jìn)制字符串
     *
     * @param bytes
     * @return
     */
    public String bytesToBinaryStr(byte[] bytes) {
        StringBuilder binaryStr = new StringBuilder();
        for (int i = 0; i < bytes.length; i++) {
            String str = Integer.toBinaryString((bytes[i] & 0xFF) + 0x100).substring(1);
            binaryStr.append(str);
        }
        return binaryStr.toString();
    }

六、關(guān)鍵場(chǎng)景與工程實(shí)踐

1. 網(wǎng)絡(luò)協(xié)議解析

在解析自定義二進(jìn)制協(xié)議時(shí),協(xié)議規(guī)范通常會(huì)明確定義字段的字節(jié)序和數(shù)值類型。例如,一個(gè) 4 字節(jié)字段可能聲明為"大端序 IEEE 754 float",此時(shí)需要:

  • 按協(xié)議字節(jié)序讀取 4 個(gè)字節(jié)
  • 組合為 float 值(或直接獲取其 int 位模式用于校驗(yàn))
  • 根據(jù)業(yè)務(wù)需求決定是保留浮點(diǎn)語義,還是轉(zhuǎn)為整數(shù)值

2. 跨語言數(shù)據(jù)交換

當(dāng) Java 系統(tǒng)與 C/C++、Python 或嵌入式 C 系統(tǒng)交換二進(jìn)制數(shù)據(jù)時(shí),必須嚴(yán)格對(duì)齊雙方的:

  • 字節(jié)序約定:Java 默認(rèn)大端,x86 C 程序通常小端
  • 結(jié)構(gòu)對(duì)齊規(guī)則:C 編譯器的填充字節(jié)可能與 Java 的緊湊布局不同
  • 類型寬度:確保 int 和 float 在雙方均為 32 位(某些嵌入式平臺(tái)可能非標(biāo)準(zhǔn))

3. 文件格式處理

圖像、音頻、科學(xué)數(shù)據(jù)等文件格式常采用 IEEE 754 存儲(chǔ)采樣值。例如:

  • WAV 音頻文件的采樣數(shù)據(jù)通常為 little-endian float 或 int
  • TIFF 圖像支持多種字節(jié)序,文件頭明確標(biāo)識(shí)
  • NetCDF/HDF 科學(xué)數(shù)據(jù)格式采用大端序作為跨平臺(tái)標(biāo)準(zhǔn)
    解析這些格式時(shí),必須根據(jù)文件頭中的元數(shù)據(jù)動(dòng)態(tài)調(diào)整字節(jié)序和類型解釋策略。

4. 加密學(xué)與哈希運(yùn)算

在實(shí)現(xiàn)某些加密算法(如浮點(diǎn)型噪聲生成、基于 IEEE 754 的混淆技術(shù))時(shí),需要精確控制浮點(diǎn)數(shù)的位模式。通過字節(jié)數(shù)組精確構(gòu)造特定的 float 位模式,再轉(zhuǎn)為 int 進(jìn)行后續(xù)位運(yùn)算,是實(shí)現(xiàn)這類算法的關(guān)鍵步驟。

七、精度、邊界與異常處理

1. NaN 與無窮大的傳播

IEEE 754 定義了多種 NaN 位模式。Float.floatToIntBits() 會(huì)將所有 NaN 規(guī)范化為單一表示(0x7fc00000),而 floatToRawIntBits() 保留原始位差異。在需要區(qū)分不同 NaN 來源的場(chǎng)景(如硬件調(diào)試、協(xié)議診斷),必須使用原始版本。

2. 下溢與漸進(jìn)精度損失

當(dāng)浮點(diǎn)值接近零時(shí),非規(guī)范化數(shù)(Denormalized Numbers)提供漸進(jìn)式精度損失,而非突然歸零。在字節(jié)數(shù)組轉(zhuǎn)換中,必須完整保留非規(guī)范化數(shù)的位模式,任何 premature 的規(guī)范化處理都會(huì)導(dǎo)致數(shù)值失真。

3. 溢出與飽和策略

將 float 轉(zhuǎn)為 int 數(shù)值時(shí),超出 int 范圍(-2³¹ 到 2³¹-1)的浮點(diǎn)數(shù)需要明確定義行為:

  • Java 的強(qiáng)制類型轉(zhuǎn)換 (int)floatValue 向零截?cái)?,溢出時(shí)取?;乩@
  • 某些場(chǎng)景需要飽和處理(限制在最大/最小值)
  • 其他場(chǎng)景可能需要拋出異常或返回特殊標(biāo)記值

4. 字節(jié)數(shù)組長度校驗(yàn)

轉(zhuǎn)換前必須嚴(yán)格校驗(yàn)數(shù)組長度。對(duì)于 32 位 int/float,要求恰好 4 個(gè)字節(jié);不足時(shí)拋出異?;蚍祷劐e(cuò)誤;超長時(shí)需明確是截?cái)?、忽略多余字?jié)還是報(bào)錯(cuò)。

八、性能優(yōu)化策略

1. 避免自動(dòng)裝箱

在批量轉(zhuǎn)換場(chǎng)景中,F(xiàn)loat 和 Integer 的自動(dòng)裝箱會(huì)產(chǎn)生大量臨時(shí)對(duì)象。優(yōu)先使用原始類型數(shù)組(int[]、float[]、byte[]),僅在必要時(shí)轉(zhuǎn)為包裝類。

2. 直接緩沖區(qū)的零拷貝

ByteBuffer.allocateDirect() 分配的緩沖區(qū)位于 JVM 堆外,可通過 JNI 直接與原生代碼交互,避免數(shù)據(jù)在 Java 堆與原生內(nèi)存間的復(fù)制。這在高頻 I/O 或大規(guī)模數(shù)據(jù)處理中效果顯著。

3. JIT 編譯器的優(yōu)化

Java 的 JIT 編譯器對(duì)位運(yùn)算和數(shù)組訪問有高度優(yōu)化。手動(dòng)移位組合代碼在熱點(diǎn)編譯后,性能通常與原生 C 相當(dāng)。過早的"優(yōu)化"(如復(fù)雜的緩存策略)反而可能干擾 JIT 的自動(dòng)優(yōu)化。

4. 批量處理與向量化

現(xiàn)代 JVM 支持 SIMD 向量化(通過 HotSpot 的自動(dòng)向量化或 Vector API)。在處理連續(xù)的大數(shù)據(jù)塊時(shí),保持?jǐn)?shù)據(jù)訪問的局部性和規(guī)律性,有助于觸發(fā) CPU 的向量化指令加速。

九、知識(shí)擴(kuò)展

在 Java 中將字節(jié)數(shù)組按照 IEEE 754 標(biāo)準(zhǔn)轉(zhuǎn)換通常指的是將 4 個(gè)字節(jié)解析為單精度浮點(diǎn)數(shù)(float),或?qū)?8 個(gè)字節(jié)解析為雙精度浮點(diǎn)數(shù)(double)。但你的需求是“轉(zhuǎn) int”,這可能有兩種理解:

  • 將 4 字節(jié)按 IEEE 754 單精度格式轉(zhuǎn)換為 float,再強(qiáng)轉(zhuǎn)為 int(會(huì)丟失小數(shù)部分)。
  • 直接將 4 字節(jié)按大端序組合成 int(此為普通整型轉(zhuǎn)換,不涉及 IEEE 754)。

因?yàn)槊鞔_寫了 “IEEE 754 標(biāo)準(zhǔn)”,所以最合理的是第一種情況:把字節(jié)數(shù)組代表的二進(jìn)制數(shù)據(jù)還原成浮點(diǎn)數(shù),再取整成 int。下面提供兩種實(shí)現(xiàn)方式。

方法一:使用 ByteBuffer(推薦)

import java.nio.ByteBuffer;
public class ByteArrayToInt {
    public static void main(String[] args) {
        // 示例:單精度浮點(diǎn)數(shù) 12.34 的 4 字節(jié)表示(大端)
        byte[] bytes = {0x41, 0x45, 0x70, (byte) 0xA4};  // 12.34 的十六進(jìn)制表示
        float f = ByteBuffer.wrap(bytes).getFloat();
        int result = (int) f;
        System.out.println("float: " + f);   // 12.34
        System.out.println("int: " + result); // 12
    }
}

如果數(shù)組是小端序(低位在前),需設(shè)置順序:

float f = ByteBuffer.wrap(bytes).order(ByteOrder.LITTLE_ENDIAN).getFloat();

方法二:手動(dòng)位運(yùn)算(不依賴 ByteBuffer)

IEEE 754 單精度格式:1 位符號(hào) + 8 位指數(shù) + 23 位尾數(shù)。

手動(dòng)將 4 個(gè)字節(jié)組合成 int 型二進(jìn)制,再調(diào)用 Float.intBitsToFloat() 還原。

public static float bytesToFloat(byte[] b, boolean isBigEndian) {
    int bits = 0;
    if (isBigEndian) {
        bits = ((b[0] & 0xFF) << 24) |
               ((b[1] & 0xFF) << 16) |
               ((b[2] & 0xFF) << 8)  |
               (b[3] & 0xFF);
    } else {
        bits = ((b[3] & 0xFF) << 24) |
               ((b[2] & 0xFF) << 16) |
               ((b[1] & 0xFF) << 8)  |
               (b[0] & 0xFF);
    }
    return Float.intBitsToFloat(bits);
}
// 使用示例
byte[] bytes = {0x41, 0x45, 0x70, (byte) 0xA4};
float f = bytesToFloat(bytes, true);   // 12.34
int result = (int) f;                  // 12

補(bǔ)充:直接字節(jié)數(shù)組轉(zhuǎn)普通 int(無 IEEE 754)

如果用戶實(shí)際想要的是將 4 個(gè)字節(jié)按大端序組合成 32 位整數(shù)(不涉及浮點(diǎn)),可直接使用:

public static int bytesToInt(byte[] b) {
    return ((b[0] & 0xFF) << 24) |
           ((b[1] & 0xFF) << 16) |
           ((b[2] & 0xFF) << 8)  |
           (b[3] & 0xFF);
}

十、總結(jié)

Java 中字節(jié)數(shù)組到 int 的轉(zhuǎn)換(基于 IEEE 754 標(biāo)準(zhǔn)),是跨越數(shù)據(jù)表示層、類型系統(tǒng)層和硬件抽象層的復(fù)雜操作。它要求開發(fā)者同時(shí)理解:

  • IEEE 754 的數(shù)學(xué)語義:符號(hào)、指數(shù)、尾數(shù)的協(xié)作機(jī)制
  • 字節(jié)序的物理現(xiàn)實(shí):大端與小端的排列差異
  • Java 的類型安全邊界:位模式重解釋的官方途徑
  • 工程場(chǎng)景的多樣性:網(wǎng)絡(luò)、文件、跨語言、加密等不同上下文的需求差異

掌握這些維度,才能在構(gòu)建健壯系統(tǒng)時(shí)做出正確的設(shè)計(jì)決策——無論是選擇 ByteBuffer 的便捷、DataInputStream 的標(biāo)準(zhǔn)化,還是手動(dòng)位運(yùn)算的極致性能。在二進(jìn)制數(shù)據(jù)的世界里,每一個(gè)字節(jié)的排列都承載著精確的語義承諾,而對(duì)這些細(xì)節(jié)的尊重,正是高質(zhì)量軟件的基石。

以上就是Java實(shí)現(xiàn)字節(jié)數(shù)組轉(zhuǎn)int(IEEE754標(biāo)準(zhǔn))的完整指南的詳細(xì)內(nèi)容,更多關(guān)于Java字節(jié)數(shù)組轉(zhuǎn)int的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • kafka監(jiān)聽問題的解決和剖析

    kafka監(jiān)聽問題的解決和剖析

    這篇文章主要給大家介紹了關(guān)于kafka監(jiān)聽問題的解決和剖析的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • Java中字符串根據(jù)寬度(像素)換行的問題

    Java中字符串根據(jù)寬度(像素)換行的問題

    這篇文章主要介紹了Java中字符串根據(jù)寬度(像素)換行的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Java集合List的方法及遍歷方式舉例

    Java集合List的方法及遍歷方式舉例

    這篇文章主要介紹了Java集合List的方法及遍歷方式的相關(guān)資料,List?是Java集合框架中的一種接口,繼承自Collection接口,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-05-05
  • 詳解Java爬蟲利器Jsoup

    詳解Java爬蟲利器Jsoup

    Jsoup是一款Java語言開發(fā)的HTML解析器,用于解析HTML文檔以及對(duì)HTML文檔進(jìn)行操作,處理等,本文就將詳細(xì)給大家介紹一下Java中的爬蟲利器Jsoup,感興趣的同學(xué)可以參考一下
    2023-06-06
  • Java中的length和length()深入分析

    Java中的length和length()深入分析

    java中的length屬性是針對(duì)數(shù)組說的,比如說你聲明了一個(gè)數(shù)組,想知道這個(gè)數(shù)組的長度則用到了length這個(gè)屬性。java中的length()方法是針對(duì)字符串String說的,如果想看這個(gè)字符串的長度則用到length()這個(gè)方法。這篇文章將介紹幾個(gè)關(guān)于Java數(shù)組的關(guān)鍵概念。
    2016-11-11
  • 30條Java代碼編寫經(jīng)驗(yàn)分享

    30條Java代碼編寫經(jīng)驗(yàn)分享

    你知道寫好Java代碼的30條經(jīng)驗(yàn)是什么嗎?這篇文章主要為大家分享了30條Java代碼編寫經(jīng)驗(yàn)技巧,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • 從匯編碼分析java對(duì)象的創(chuàng)建過程(推薦)

    從匯編碼分析java對(duì)象的創(chuàng)建過程(推薦)

    這篇文章主要介紹了從匯編碼分析java對(duì)象的創(chuàng)建過程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-03-03
  • Spring MVC InitBinder驗(yàn)證方法

    Spring MVC InitBinder驗(yàn)證方法

    這篇文章主要介紹了Spring MVC InitBinder驗(yàn)證方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-03-03
  • Java實(shí)現(xiàn)簡單樹結(jié)構(gòu)

    Java實(shí)現(xiàn)簡單樹結(jié)構(gòu)

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)簡單樹結(jié)構(gòu)的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • Java的JDBC編程使用之連接Mysql數(shù)據(jù)庫

    Java的JDBC編程使用之連接Mysql數(shù)據(jù)庫

    這篇文章主要給大家介紹了關(guān)于Java的JDBC編程使用之連接Mysql數(shù)據(jù)庫的相關(guān)資料,JDBC是一種用于執(zhí)行SQL語句的Java?API,可以為多種關(guān)系數(shù)據(jù)庫提供統(tǒng)一訪問,需要的朋友可以參考下
    2023-12-12

最新評(píng)論

泾川县| 宁阳县| 如东县| 灌阳县| 浮山县| 太湖县| 九寨沟县| 息烽县| 静宁县| 桦川县| 甘孜| 丹东市| 玉环县| 邵阳县| 长垣县| 万山特区| 望都县| 彰化县| 阿尔山市| 高邑县| 南昌县| 乐陵市| 金山区| 冀州市| 烟台市| 三都| 威宁| 延长县| 比如县| 曲沃县| 库尔勒市| 洪湖市| 永仁县| 孟村| 兰溪市| 浏阳市| 城步| 田林县| 紫金县| 阜城县| 新丰县|