IntDataBuffer

ממשק ציבורי IntDataBuffer

DataBuffer של ints.

שיטות ציבוריות

מופשט IntDataBuffer
copyTo ( DataBuffer <Integer> dst, גודל ארוך)
מופשט int
getInt (אינדקס ארוך)
קורא את ה-int באינדקס הנתון.
מספר שלם מופשט
getObject (אינדקס ארוך)
קורא את הערך באינדקס הנתון.
מופשט IntDataBuffer
צר (גודל ארוך)
יוצר מאגר חדש שהתוכן שלו הוא רצף משותף של התוכן של מאגר זה, שגודלו מוגדר לערך הנתון.
מופשט IntDataBuffer
היסט (מדד ארוך)
יוצר מאגר חדש שהתוכן שלו הוא רצף משותף של תוכן מאגר זה, החל מהאינדקס הנתון.
מופשט IntDataBuffer
read (int[] dst)
שיטת קבל בכמות גדולה, באמצעות מערכי int.
מופשט IntDataBuffer
read (int[] dst, int offset, int length)
שיטת קבל בכמות גדולה, באמצעות מערכי int.
מופשט IntDataBuffer
setInt (ערך int, אינדקס ארוך)
כותב את ה-int הנתון למאגר הזה באינדקס הנתון.
מופשט IntDataBuffer
setObject (ערך שלם, אינדקס ארוך)
מופשט IntDataBuffer
פרוסה (מדד ארוך, גודל ארוך)
יוצר מאגר חדש שהתוכן שלו הוא רצף משותף של תוכן מאגר זה, החל מהאינדקס הנתון ובגודל הנתון.
תקציר DataBufferWindow < IntDataBuffer >
חלון (בגודל ארוך)
יוצר DataBufferWindow המספק תצוגה חלקית של מאגר זה.
מופשט IntDataBuffer
כתוב (int[] src)
שיטת הצבת בכמות גדולה, באמצעות מערכי int.
מופשט IntDataBuffer
כתוב (int[] src, int offset, int length)
שיטת הצבת בכמות גדולה, באמצעות מערכי int.

שיטות בירושה

שיטות ציבוריות

תקציר ציבורי IntDataBuffer copyTo ( DataBuffer <Integer> dst, גודל ארוך)

תקציר ציבורי int getInt (אינדקס ארוך)

קורא את ה-int באינדקס הנתון.

פרמטרים
מַדָד המדד שממנו ייקרא הצוף
מחזיר
  • ה-int במדד הנתון
זורק
IndexOutOfBoundsException אם האינדקס שלילי או לא קטן מגודל המאגר

תקציר ציבורי שלם getObject (אינדקס ארוך)

קורא את הערך באינדקס הנתון. חשוב: השימוש בשיטה זו צריך להיות מוגבל למאגרים מסוגים לא פרימיטיביים או כאשר סוג הנתונים אינו ידוע באופן דטרמיניסטי על ידי המתקשר. בכל מקרה אחר, העדיפו את השימוש בגרסה הפרימיטיבית שלו שתשפר משמעותית את הביצועים (למשל IntDataBuffer.getInt(idx)

פרמטרים
מַדָד המדד שממנו ייקרא הצוף
מחזיר
  • הערך במדד הנתון

תקציר ציבורי IntDataBuffer צר (גודל ארוך)

יוצר מאגר חדש שהתוכן שלו הוא רצף משותף של התוכן של מאגר זה, שגודלו מוגדר לערך הנתון.

הגודל החדש לא יכול להיות גדול מגודל המאגר הזה. שינויים בתוכן המאגר הזה יהיו גלויים במאגר החדש ולהיפך. המאגר החדש יהיה לקריאה בלבד אם, ורק אם, המאגר הזה הוא לקריאה בלבד.

קריאה זו מקבילה slice(0, size)

פרמטרים
גוֹדֶל גודל המאגר החדש הזה
מחזיר
  • המאגר החדש

Offset public abstract IntDataBuffer (אינדקס ארוך)

יוצר מאגר חדש שהתוכן שלו הוא רצף משותף של תוכן מאגר זה, החל מהאינדקס הנתון.

האינדקס לא יכול להיות גדול מגודל המאגר הזה. שינויים בתוכן המאגר הזה יהיו גלויים במאגר החדש ולהיפך. המאגר החדש יהיה לקריאה בלבד אם, ורק אם, המאגר הזה הוא לקריאה בלבד.

קריאה זו מקבילה ל- slice(index, size() - index)

פרמטרים
מַדָד אינדקס של הערך הראשון של המאגר החדש שנוצר, לא יכול להיות גדול מ- size()
מחזיר
  • המאגר החדש

תקציר ציבורי IntDataBuffer read (int[] dst)

שיטת קבל בכמות גדולה, באמצעות מערכי int.

שיטה זו מעבירה ערכים ממאגר זה למערך היעד הנתון. אם יש פחות ערכים במאגר מהנדרש כדי לספק את הבקשה, כלומר, אם dst.length > size() , אז לא מועברים ערכים ונזרק BufferUnderflowException.

אחרת, שיטה זו מעתיקה ערכי n = dst.length ממאגר זה למערך הנתון.

פרמטרים
dst המערך שאליו יש לכתוב ערכים
מחזיר
  • החיץ הזה
זורק
BufferUnderflowException אם אין מספיק ערכים להעתקה מהמאגר הזה

תקציר ציבורי של IntDataBuffer read (int[] dst, int offset, int length)

שיטת קבל בכמות גדולה, באמצעות מערכי int.

שיטה זו מעבירה ערכים ממאגר זה למערך היעד הנתון. אם יש פחות ערכים במאגר מהנדרש כדי לספק את הבקשה, כלומר, אם length > size() , אז לא מועברים ערכים ונזרק BufferUnderflowException.

אחרת, שיטה זו מעתיקה ערכי n = length מהמאגר הזה למערך הנתון החל מההיסט הנתון.

פרמטרים
dst המערך שאליו יש לכתוב ערכים
לְקַזֵז ההיסט בתוך המערך של הערך הראשון שייכתב; חייב להיות לא שלילי ולא גדול מ- dst.length
מֶשֶׁך המספר המרבי של ערכים שייכתב למערך הנתון; חייב להיות לא שלילי ולא גדול מ- dst.length - offset
מחזיר
  • החיץ הזה
זורק
BufferUnderflowException אם נותרו במאגר הזה פחות ערכי אורך
IndexOutOfBoundsException אם התנאים המוקדמים בפרמטרי ההיסט והאורך אינם מתקיימים

תקציר ציבורי IntDataBuffer setInt (ערך int, אינדקס ארוך)

כותב את ה-int הנתון למאגר הזה באינדקס הנתון.

פרמטרים
עֵרֶך ה-int שייכתב
מַדָד המדד שבו ייכתב הערך
מחזיר
  • החיץ הזה
זורק
IndexOutOfBoundsException אם האינדקס שלילי או לא קטן מגודל המאגר
ReadOnlyBufferException אם המאגר הזה הוא לקריאה בלבד

תקציר ציבורי IntDataBuffer setObject (ערך שלם, אינדקס ארוך)

פרוסת IntDataBuffer תקציר ציבורי (אינדקס ארוך, גודל ארוך)

יוצר מאגר חדש שהתוכן שלו הוא רצף משותף של תוכן מאגר זה, החל מהאינדקס הנתון ובגודל הנתון.

האינדקס בתוספת הגודל החדש לא יהיו גדולים מגודל המאגר הזה. שינויים בתוכן המאגר הזה יהיו גלויים במאגר החדש ולהיפך. המאגר החדש יהיה לקריאה בלבד אם, ורק אם, המאגר הזה הוא לקריאה בלבד.

פרמטרים
מַדָד אינדקס של הערך הראשון של המאגר החדש שנוצר
גוֹדֶל גודל המאגר החדש הזה, לא יכול להיות גדול מ- size()
מחזיר
  • המאגר החדש

תקציר ציבורי DataBufferWindow < IntDataBuffer > חלון (גודל ארוך)

יוצר 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 של מאגר זה

תקציר ציבורי של IntDataBuffer כתיבה (int[] src)

שיטת הצבת בכמות גדולה, באמצעות מערכי int.

שיטה זו מעבירה את הערכים במערך המקור הנתון למאגר הזה. אם יש יותר ערכים במערך המקור מאשר במאגר הזה, כלומר אם src.length > size() , אז לא מועברים ערכים ונזרק BufferOverflowException.

אחרת, שיטה זו מעתיקה ערכי n = src.length מהמערך הנתון.

פרמטרים
src מערך המקור שממנו יש לקרוא ערכים
מחזיר
  • החיץ הזה
זורק
BufferOverflowException אם אין מספיק מקום במאגר הזה עבור הערכים במערך המקור
ReadOnlyBufferException אם המאגר הזה הוא לקריאה בלבד

תקציר ציבורי של IntDataBuffer כתיבה (int[] src, int offset, int length)

שיטת הצבת בכמות גדולה, באמצעות מערכי int.

שיטה זו מעבירה את הערכים במערך המקור הנתון למאגר הזה. אם יש יותר ערכים במערך המקור מאשר במאגר הזה, כלומר אם length > size() , אז לא מועברים ערכים ונזרק BufferOverflowException.

אחרת, שיטה זו מעתיקה ערכי n = length מהמערך הנתון למאגר זה, החל מההיסט הנתון.

פרמטרים
src מערך המקור שממנו יש לקרוא ערכים
לְקַזֵז ההיסט בתוך המערך של הערך הראשון שיש לקרוא; חייב להיות לא שלילי ולא גדול מ- src.length
מֶשֶׁך מספר הערכים שיש לקרוא מהמערך הנתון; חייב להיות לא שלילי ולא גדול מ- src.length - offset
מחזיר
  • החיץ הזה
זורק
BufferOverflowException אם אין מספיק מקום במאגר הזה עבור הערכים במערך המקור
IndexOutOfBoundsException אם התנאים המוקדמים בפרמטרי ההיסט והאורך אינם מתקיימים
ReadOnlyBufferException אם המאגר הזה הוא לקריאה בלבד