Cloneable, ConfigurationSerializablepublic class ItemStack extends Object implements Cloneable, ConfigurationSerializable
| Modifier | Constructor | Description | 
|---|---|---|
| protected  | ItemStack() | |
|   | ItemStack(ItemStack stack) | Creates a new item stack derived from the specified stack | 
|   | ItemStack(Material type) | Defaults stack size to 1, with no extra data | 
|   | ItemStack(Material type,
         int amount) | An item stack with no extra data | 
|   | ItemStack(Material type,
         int amount,
         short damage) | Deprecated.
 | 
|   | ItemStack(Material type,
         int amount,
         short damage,
         Byte data) | Deprecated.
 this method uses an ambiguous data byte object | 
| Modifier and Type | Method | Description | 
|---|---|---|
| ItemStack | add() | Adds 1 to this itemstack. | 
| ItemStack | add(int qty) | Adds quantity to this itemstack. | 
| void | addEnchantment(Enchantment ench,
              int level) | Adds the specified  Enchantmentto this item stack. | 
| void | addEnchantments(Map<Enchantment,Integer> enchantments) | Adds the specified enchantments to this item stack. | 
| void | addItemFlags(ItemFlag... itemFlags) | Set itemflags which should be ignored when rendering a ItemStack in the Client. | 
| void | addUnsafeEnchantment(Enchantment ench,
                    int level) | Adds the specified  Enchantmentto this item stack. | 
| void | addUnsafeEnchantments(Map<Enchantment,Integer> enchantments) | Adds the specified enchantments to this item stack in an unsafe manner. | 
| ItemStack | asOne() | Clones the itemstack and returns it a single quantity. | 
| ItemStack | asQuantity(int qty) | Clones the itemstack and returns it as the specified quantity | 
| ItemStack | clone() | |
| boolean | containsEnchantment(Enchantment ench) | Checks if this ItemStack contains the given  Enchantment | 
| static ItemStack | deserialize(Map<String,Object> args) | Required method for configuration serialization | 
| ItemStack | ensureServerConversions() | Minecart updates are converting simple item stacks into more complex NBT oriented Item Stacks. | 
| boolean | equals(Object obj) | |
| int | getAmount() | Gets the amount of items in this stack | 
| MaterialData | getData() | Gets the MaterialData for this stack of items | 
| short | getDurability() | Deprecated.
 | 
| int | getEnchantmentLevel(Enchantment ench) | Gets the level of the specified enchantment on this item stack | 
| Map<Enchantment,Integer> | getEnchantments() | Gets a map containing all enchantments and their levels on this item. | 
| String | getI18NDisplayName() | Gets the Display name as seen in the Client. | 
| Set<ItemFlag> | getItemFlags() | Get current set itemFlags. | 
| ItemMeta | getItemMeta() | Get a copy of this ItemStack's  ItemMeta. | 
| List<String> | getLore() | If the item has lore, returns it, else it will return null | 
| int | getMaxItemUseDuration() | |
| int | getMaxStackSize() | Get the maximum stacksize for the material hold in this ItemStack. | 
| Material | getType() | Gets the type of this item | 
| int | hashCode() | |
| boolean | hasItemFlag(ItemFlag flag) | Check if the specified flag is present on this item. | 
| boolean | hasItemMeta() | Checks to see if any meta data has been defined. | 
| boolean | isSimilar(ItemStack stack) | This method is the same as equals, but does not consider stack size
 (amount). | 
| int | removeEnchantment(Enchantment ench) | Removes the specified  Enchantmentif it exists on this
 ItemStack | 
| void | removeItemFlags(ItemFlag... itemFlags) | Remove specific set of itemFlags. | 
| Map<String,Object> | serialize() | Creates a Map representation of this class. | 
| void | setAmount(int amount) | Sets the amount of items in this stack | 
| void | setData(MaterialData data) | Sets the MaterialData for this stack of items | 
| void | setDurability(short durability) | Deprecated.
 durability is now part of ItemMeta. | 
| boolean | setItemMeta(ItemMeta itemMeta) | Set the ItemMeta of this ItemStack. | 
| void | setLore(List<String> lore) | Sets the lore for this item. | 
| void | setType(Material type) | Sets the type of this item | 
| ItemStack | subtract() | Subtracts 1 to this itemstack. | 
| ItemStack | subtract(int qty) | Subtracts quantity to this itemstack. | 
| String | toString() | 
protected ItemStack()
public ItemStack(@NotNull
                 Material type)
type - item materialpublic ItemStack(@NotNull
                 Material type,
                 int amount)
type - item materialamount - stack sizepublic ItemStack(@NotNull
                 Material type,
                 int amount,
                 short damage)
type - item materialamount - stack sizedamage - durability / damage@Deprecated public ItemStack(@NotNull Material type, int amount, short damage, @Nullable Byte data)
type - the typeamount - the amount in the stackdamage - the damage value of the itemdata - the data value or nullpublic ItemStack(@NotNull
                 ItemStack stack)
          throws IllegalArgumentException
stack - the stack to copyIllegalArgumentException - if the specified stack is null or
     returns an item meta not created by the item factory@NotNull public Material getType()
public void setType(@NotNull
                    Material type)
Note that in doing so you will reset the MaterialData for this stack
type - New type to set the items in this stack topublic int getAmount()
public void setAmount(int amount)
amount - New amount of items in this stack@Nullable public MaterialData getData()
public void setData(@Nullable
                    MaterialData data)
data - New MaterialData for this item@Deprecated public void setDurability(short durability)
getItemMeta(), setItemMeta(ItemMeta) and
 Damageable.setDamage(int) should be used instead. This is because
 any call to this method will be overwritten by subsequent setting of
 ItemMeta which was created before this call.durability - Durability of this item@Deprecated public short getDurability()
public int getMaxStackSize()
public boolean isSimilar(@Nullable
                         ItemStack stack)
stack - the item stack to compare topublic boolean containsEnchantment(@NotNull
                                   Enchantment ench)
Enchantmentench - Enchantment to testpublic int getEnchantmentLevel(@NotNull
                               Enchantment ench)
ench - Enchantment to check@NotNull public Map<Enchantment,Integer> getEnchantments()
public void addEnchantments(@NotNull
                            Map<Enchantment,Integer> enchantments)
 This method is the same as calling addEnchantment(org.bukkit.enchantments.Enchantment, int) for each
 element of the map.
enchantments - Enchantments to addIllegalArgumentException - if the specified enchantments is nullIllegalArgumentException - if any specific enchantment or level
     is null. Warning: Some enchantments may be added before this
     exception is thrown.public void addEnchantment(@NotNull
                           Enchantment ench,
                           int level)
Enchantment to this item stack.
 If this item stack already contained the given enchantment (at any level), it will be replaced.
ench - Enchantment to addlevel - Level of the enchantmentIllegalArgumentException - if enchantment null, or enchantment is
     not applicablepublic void addUnsafeEnchantments(@NotNull
                                  Map<Enchantment,Integer> enchantments)
 This method is the same as calling addUnsafeEnchantment(org.bukkit.enchantments.Enchantment, int) for
 each element of the map.
enchantments - Enchantments to addpublic void addUnsafeEnchantment(@NotNull
                                 Enchantment ench,
                                 int level)
Enchantment to this item stack.
 If this item stack already contained the given enchantment (at any level), it will be replaced.
This method is unsafe and will ignore level restrictions or item type. Use at your own discretion.
ench - Enchantment to addlevel - Level of the enchantmentpublic int removeEnchantment(@NotNull
                             Enchantment ench)
Enchantment if it exists on this
 ItemStackench - Enchantment to remove@NotNull public Map<String,Object> serialize()
ConfigurationSerializable
 This class must provide a method to restore this class, as defined in
 the ConfigurationSerializable interface javadocs.
serialize in interface ConfigurationSerializable@NotNull public static ItemStack deserialize(@NotNull Map<String,Object> args)
args - map to deserializeConfigurationSerializablepublic ItemMeta getItemMeta()
ItemMeta.public boolean hasItemMeta()
public boolean setItemMeta(@Nullable
                           ItemMeta itemMeta)
itemMeta - new ItemMeta, or null to indicate meta data be cleared.ItemFactory.isApplicable(ItemMeta, ItemStack)IllegalArgumentException - if the item meta was not created by
     the ItemFactory@NotNull public ItemStack ensureServerConversions()
@Nullable public String getI18NDisplayName()
public int getMaxItemUseDuration()
@NotNull public ItemStack asOne()
@NotNull public ItemStack asQuantity(int qty)
qty - The quantity of the cloned item@NotNull public ItemStack add()
@NotNull public ItemStack add(int qty)
qty - The amount to add@NotNull public ItemStack subtract()
@NotNull public ItemStack subtract(int qty)
qty - The amount to add@Nullable public List<String> getLore()
public void setLore(@Nullable
                    List<String> lore)
lore - the lore that will be setpublic void addItemFlags(@NotNull
                         ItemFlag... itemFlags)
itemFlags - The hideflags which shouldn't be renderedpublic void removeItemFlags(@NotNull
                            ItemFlag... itemFlags)
itemFlags - Hideflags which should be removed@NotNull public Set<ItemFlag> getItemFlags()
public boolean hasItemFlag(@NotNull
                           ItemFlag flag)
flag - the flag to checkCopyright © 2020. All rights reserved.