DataBuffer
של בתים.
שיטות ציבוריות
מופשט BooleanDataBuffer | כבוליאנים () החזר מאגר בתים זה כמאגר של בוליאנים. |
תקציר DoubleDataBuffer | ככפילים () החזר מאגר בתים זה כמאגר של כפולים. |
מופשט FloatDataBuffer | asfloats () החזר את מאגר בתים זה כמאגר של צפים. |
מופשט IntDataBuffer | asInts () החזר מאגר בתים זה כמאגר של ints. |
תקציר LongDataBuffer | asLongs () החזר את מאגר בתים זה כמאגר של longs. |
מופשט ShortDataBuffer | מכנסיים קצרים () החזר את מאגר הבתים הזה כמאגר של קצרים. |
תקציר ByteDataBuffer | copyTo ( DataBuffer <Byte> dst, גודל ארוך) |
בתים מופשטים | getByte (אינדקס ארוך) קורא את הבת באינדקס הנתון. |
אבסטרקט בייט | getObject (אינדקס ארוך) קורא את הערך באינדקס הנתון. |
תקציר ByteDataBuffer | צר (גודל ארוך) יוצר מאגר חדש שהתוכן שלו הוא רצף משותף של התוכן של מאגר זה, שגודלו מוגדר לערך הנתון. |
תקציר ByteDataBuffer | היסט (מדד ארוך) יוצר מאגר חדש שהתוכן שלו הוא רצף משותף של תוכן מאגר זה, החל מהאינדקס הנתון. |
תקציר ByteDataBuffer | read (byte[] dst) שיטת קבל בכמות גדולה, באמצעות מערכי בתים. |
תקציר ByteDataBuffer | read (byte[] dst, int offset, int length) שיטת קבל בכמות גדולה, באמצעות מערכי בתים. |
תקציר ByteDataBuffer | setByte (ערך בתים, אינדקס ארוך) כותב את הביט הנתון למאגר הזה באינדקס הנתון. |
תקציר ByteDataBuffer | setObject (ערך בייט, אינדקס ארוך) |
תקציר ByteDataBuffer | פרוסה (מדד ארוך, גודל ארוך) יוצר מאגר חדש שהתוכן שלו הוא רצף משותף של תוכן מאגר זה, החל מהאינדקס הנתון ובגודל הנתון. |
תקציר DataBufferWindow < ByteDataBuffer > | חלון (בגודל ארוך) יוצר DataBufferWindow המספק תצוגה חלקית של מאגר זה. |
תקציר ByteDataBuffer | כתוב (byte[] src) שיטת הוצאת בתפזורת , באמצעות מערכי בתים. |
תקציר ByteDataBuffer | כתוב (byte[] src, int offset, int length) שיטת הוצאת בתפזורת , באמצעות מערכי בתים. |
שיטות בירושה
שיטות ציבוריות
תקציר ציבורי BooleanDataBuffer asBooleans ()
החזר את מאגר הבתים הזה כמאגר של בוליאנים.
המאגר המוחזר מספק תצוגה שונה על אותו זיכרון כמו מאגר הביטים המקורי, כלומר שינוי ערך באחד ישפיע על השני.
מחזיר
- המאגר הזה בתור
BooleanDataBuffer
זורק
חריגה של מדינה בלתי חוקית | אם לא ניתן להמיר את המאגר הזה |
---|
תקציר ציבורי DoubleDataBuffer asDoubles ()
החזר מאגר בתים זה כמאגר של כפולים.
המאגר המוחזר מספק תצוגה שונה על אותו זיכרון כמו מאגר הביטים המקורי, כלומר שינוי ערך באחד ישפיע על השני.
מחזיר
- מאגר זה כ-
DoubleDataBuffer
זורק
חריגה של מדינה בלתי חוקית | אם לא ניתן להמיר את המאגר הזה |
---|
תקציר ציבורי FloatDataBuffer asFloats ()
החזר את מאגר בתים זה כמאגר של צפים.
המאגר המוחזר מספק תצוגה שונה על אותו זיכרון כמו מאגר הביטים המקורי, כלומר שינוי ערך באחד ישפיע על השני.
מחזיר
- המאגר הזה בתור
FloatDataBuffer
זורק
חריגה של מדינה בלתי חוקית | אם לא ניתן להמיר את המאגר הזה |
---|
תקציר ציבורי IntDataBuffer asInts ()
החזר מאגר בתים זה כמאגר של ints.
המאגר המוחזר מספק תצוגה שונה על אותו זיכרון כמו מאגר הביטים המקורי, כלומר שינוי ערך באחד ישפיע על השני.
מחזיר
- מאגר זה בתור
IntDataBuffer
זורק
חריגה של מדינה בלתי חוקית | אם לא ניתן להמיר את המאגר הזה |
---|
תקציר ציבורי LongDataBuffer asLongs ()
החזר את מאגר בתים זה כמאגר של longs.
המאגר המוחזר מספק תצוגה שונה על אותו זיכרון כמו מאגר הביטים המקורי, כלומר שינוי ערך באחד ישפיע על השני.
מחזיר
- המאגר הזה בתור
LongDataBuffer
זורק
חריגה של מדינה בלתי חוקית | אם לא ניתן להמיר את המאגר הזה |
---|
תקציר ציבורי ShortDataBuffer asShorts ()
החזר את מאגר הבתים הזה כמאגר של קצרים.
המאגר המוחזר מספק תצוגה שונה על אותו זיכרון כמו מאגר הביטים המקורי, כלומר שינוי ערך באחד ישפיע על השני.
מחזיר
- המאגר הזה בתור
ShortDataBuffer
זורק
חריגה של מדינה בלתי חוקית | אם לא ניתן להמיר את המאגר הזה |
---|
byte תקציר ציבורי getByte (אינדקס ארוך)
קורא את הבת באינדקס הנתון.
פרמטרים
מַדָד | המדד שממנו ייקרא הצוף |
---|
מחזיר
- הבת באינדקס הנתון
זורק
IndexOutOfBoundsException | אם האינדקס שלילי או לא קטן מגודל המאגר |
---|
תקציר ציבורי Byte getObject (אינדקס ארוך)
קורא את הערך באינדקס הנתון. חשוב: השימוש בשיטה זו צריך להיות מוגבל למאגרים מסוגים לא פרימיטיביים או כאשר סוג הנתונים אינו ידוע באופן דטרמיניסטי על ידי המתקשר. בכל מקרה אחר, העדיפו את השימוש בגרסה הפרימיטיבית שלו שתשפר משמעותית את הביצועים (למשל IntDataBuffer.getInt(idx)
פרמטרים
מַדָד | המדד שממנו ייקרא הצוף |
---|
מחזיר
- הערך במדד הנתון
תקציר ציבורי ByteDataBuffer צר (גודל ארוך)
יוצר מאגר חדש שהתוכן שלו הוא רצף משותף של התוכן של מאגר זה, שגודלו מוגדר לערך הנתון.
הגודל החדש לא יכול להיות גדול מגודל המאגר הזה. שינויים בתוכן המאגר הזה יהיו גלויים במאגר החדש ולהיפך. המאגר החדש יהיה לקריאה בלבד אם, ורק אם, המאגר הזה הוא לקריאה בלבד.
קריאה זו מקבילה slice(0, size)
פרמטרים
גוֹדֶל | גודל המאגר החדש הזה |
---|
מחזיר
- המאגר החדש
תקציר ציבורי של ByteDataBuffer offset (אינדקס ארוך)
יוצר מאגר חדש שהתוכן שלו הוא רצף משותף של תוכן מאגר זה, החל מהאינדקס הנתון.
האינדקס לא יכול להיות גדול מגודל המאגר הזה. שינויים בתוכן המאגר הזה יהיו גלויים במאגר החדש ולהיפך. המאגר החדש יהיה לקריאה בלבד אם, ורק אם, המאגר הזה הוא לקריאה בלבד.
קריאה זו מקבילה ל- slice(index, size() - index)
פרמטרים
מַדָד | אינדקס של הערך הראשון של המאגר החדש שנוצר, לא יכול להיות גדול מ- size() |
---|
מחזיר
- המאגר החדש
תקציר ציבורי ByteDataBuffer read (byte[] dst)
שיטת קבל בכמות גדולה, באמצעות מערכי בתים.
שיטה זו מעבירה ערכים ממאגר זה למערך היעד הנתון. אם יש פחות ערכים במאגר מהנדרש כדי לספק את הבקשה, כלומר, אם dst.length > size()
, אז לא מועברים ערכים ונזרק BufferUnderflowException.
אחרת, שיטה זו מעתיקה ערכי n = dst.length
ממאגר זה למערך הנתון.
פרמטרים
dst | המערך שאליו יש לכתוב ערכים |
---|
מחזיר
- החיץ הזה
זורק
BufferUnderflowException | אם אין מספיק ערכים להעתקה מהמאגר הזה |
---|
Public abstract ByteDataBuffer read (byte[] dst, int offset, int length)
שיטת קבל בכמות גדולה, באמצעות מערכי בתים.
שיטה זו מעבירה ערכים ממאגר זה למערך היעד הנתון. אם יש פחות ערכים במאגר מהנדרש כדי לספק את הבקשה, כלומר, אם length > size()
, אז לא מועברים ערכים ונזרק BufferUnderflowException.
אחרת, שיטה זו מעתיקה ערכי n = length
מהמאגר הזה למערך הנתון החל מההיסט הנתון.
פרמטרים
dst | המערך שאליו יש לכתוב ערכים |
---|---|
לְקַזֵז | ההיסט בתוך המערך של הערך הראשון שייכתב; חייב להיות לא שלילי ולא גדול מ- dst.length |
מֶשֶׁך | המספר המרבי של ערכים שיכתבו למערך הנתון; חייב להיות לא שלילי ולא גדול מ- dst.length - offset |
מחזיר
- החיץ הזה
זורק
BufferUnderflowException | אם נותרו פחות מערכי אורך במאגר הזה |
---|---|
IndexOutOfBoundsException | אם התנאים המוקדמים בפרמטרי ההיסט והאורך אינם מתקיימים |
תקציר ציבורי ByteDataBuffer setByte (ערך בתים, אינדקס ארוך)
כותב את הביט הנתון למאגר הזה באינדקס הנתון.
פרמטרים
עֵרֶך | הבת שייכתב |
---|---|
מַדָד | המדד שבו ייכתב הערך |
מחזיר
- החיץ הזה
זורק
IndexOutOfBoundsException | אם האינדקס שלילי או לא קטן מגודל המאגר |
---|---|
ReadOnlyBufferException | אם המאגר הזה הוא לקריאה בלבד |
תקציר ציבורי של ByteDataBuffer פרוסת (אינדקס ארוך, גודל ארוך)
יוצר מאגר חדש שהתוכן שלו הוא רצף משותף של תוכן מאגר זה, החל מהאינדקס הנתון ובגודל הנתון.
האינדקס בתוספת הגודל החדש לא יכול להיות גדול מגודל המאגר הזה. שינויים בתוכן המאגר הזה יהיו גלויים במאגר החדש ולהיפך. המאגר החדש יהיה לקריאה בלבד אם, ורק אם, המאגר הזה הוא לקריאה בלבד.
פרמטרים
מַדָד | אינדקס של הערך הראשון של המאגר החדש שנוצר |
---|---|
גוֹדֶל | גודל המאגר החדש הזה, לא יכול להיות גדול מ- size() |
מחזיר
- המאגר החדש
תקציר ציבורי DataBufferWindow < ByteDataBuffer > חלון (גודל ארוך)
יוצר DataBufferWindow
המספק תצוגה חלקית של מאגר זה.
לחלון שנוצר יש גודל קבוע והוא יכול "slide"
לאורך המאגר הזה כדי לספק תצוגות שונות של הנתונים מבלי להקצות מופע חיץ חדש, כמו offset(long)
עושה. זה משפר את הביצועים הכוללים כאשר פעולה זו חוזרת על עצמה לעתים קרובות. לְדוּגמָה:
IntDataBuffer bufferA = DataBuffers.ofInts(1024);
// ... init buffer data
IntDataBuffer bufferB = DataBuffers.ofInts(1, 2, 3, 4);
// Return the index of the first occurrence of bufferB in bufferA using a sliding window
DataBufferWindow<IntDataBuffer> windowA = bufferA.window(4);
for (int i = 0; i < bufferA.size() - bufferB.size(); ++i) {
if (windowA.slideTo(i).buffer().equals(bufferB)) {
return i;
}
}
האובייקט המוחזר הוא מצבי ואינו בטוח לחוט.
פרמטרים
גוֹדֶל | גודל החלון |
---|
מחזיר
- חלון חדש שמתחיל באינדקס 0 של מאגר זה
תקציר ציבורי ByteDataBuffer כתיבה (byte[] src)
שיטת הוצאת בתפזורת , באמצעות מערכי בתים.
שיטה זו מעבירה את הערכים במערך המקור הנתון למאגר הזה. אם יש יותר ערכים במערך המקור מאשר במאגר הזה, כלומר אם src.length > size()
, אז לא מועברים ערכים ונזרק BufferOverflowException.
אחרת, שיטה זו מעתיקה ערכי n = src.length
מהמערך הנתון.
פרמטרים
src | מערך המקור שממנו יש לקרוא ערכים |
---|
מחזיר
- החיץ הזה
זורק
BufferOverflowException | אם אין מספיק מקום במאגר הזה עבור הערכים במערך המקור |
---|---|
ReadOnlyBufferException | אם המאגר הזה הוא לקריאה בלבד |
תקציר ציבורי ByteDataBuffer כתיבה (byte[] src, int offset, int length)
שיטת הוצאת בתפזורת , באמצעות מערכי בתים.
שיטה זו מעבירה את הערכים במערך המקור הנתון למאגר הזה. אם יש יותר ערכים במערך המקור מאשר במאגר הזה, כלומר אם length > size()
, אז לא מועברים ערכים ונזרק BufferOverflowException.
אחרת, שיטה זו מעתיקה ערכי n = length
מהמערך הנתון למאגר זה, החל מההיסט הנתון.
פרמטרים
src | מערך המקור שממנו יש לקרוא ערכים |
---|---|
לְקַזֵז | ההיסט בתוך המערך של הערך הראשון שיש לקרוא; חייב להיות לא שלילי ולא גדול מ- src.length |
מֶשֶׁך | מספר הערכים שיש לקרוא מהמערך הנתון; חייב להיות לא שלילי ולא גדול מ- src.length - offset |
מחזיר
- החיץ הזה
זורק
BufferOverflowException | אם אין מספיק מקום במאגר הזה עבור הערכים במערך המקור |
---|---|
IndexOutOfBoundsException | אם התנאים המוקדמים בפרמטרי ההיסט והאורך אינם מתקיימים |
ReadOnlyBufferException | אם המאגר הזה הוא לקריאה בלבד |