Cactus

"What do you reckon is the most embarrassing way to die in Minecraft? Hugging a Creeper you mistook for a loved one? Skinny dipping in a pool of lava? For us, it's the idea of the humble cactus block getting the finishing blow. When you touch their spiky skin, they only deal a half heart of damage at a time. That means you'd have to fall on a cactus block twenty times to perish to their prickles. Oh, the shame..."

- Tom Stone

A cactus is a plant block that generates naturally in dry areas.

Natural generation
Cacti naturally occur in desert and badlands biomes(twice more common in desert than in badlands). They generate as one ($11/18$ chance), two ($5/18$ chance), or three ($2/18$ chance) blocks tall. Rarely taller cacti can be found if generation chooses to generate another on top of one already generated (although not as commonly as sugar cane).

A potted cactus can also be found in an igloo with a basement. Potted cacti and 3 block cactus also found in some desert village buildings.

Cacti planted in water level will not harm drowns.

Obtaining
A cactus can be mined by hand without taking damage. The tool used to mine the cactus does not affect mining speed.

When the spot a cactus is placed in becomes unsuitable, such as when a solid block is placed next to it or its supporting block is removed, the cactus block uproots and drops as an item.

A cactus also removes and drops itself as an item, if a piston tries to push it (trying to pull it does nothing) or moves a block into its space.

Using a sign on the side of a cactus causes both the sign and the cactus to drop as items.

Farming
Cacti naturally grow to a height of three blocks, adding a block of height when the top cactus block has received 16 random ticks (i.e. on average every 18 minutes, but the actual rate can vary widely). Bone meal does not work on cacti to speed its growth. A cactus does not need light to grow and is non-flammable. If a cactus has space directly above it, it grows even if the newly-grown block would immediately break due to adjacent blocks.

Trading
Wandering traders sell cactus for three emeralds.

Usage
A cactus block may be placed only on sand, red sand or another cactus block. A cactus breaks itself (and drops as an item) if any block with a solid material, or lava, occupies any of the 4 horizontally adjacent blocks. It also breaks if on sand and the block above is water or lava.

When any entity, including players and mobs, touches a cactus, damage is taken every 0.5 seconds. Damage from touching a cactus is reduced by armor, but touching it also damages the armor. Mobs do not avoid cacti when they pathfind.

Cacti destroy any items that come into contact with them, including cactus blocks harvested above them.

When a minecart hits a cactus block, the minecart drops as an item and is often destroyed, although a hopper can pick it up faster.

A cactus can also be placed in a flower pot, where it is rendered harmless.

A cactus (excluding its spines) is $7/8$ of a block in width (the same as chests) and a full block in height, however the collision box is $15/16$ of a block high.

Smelting ingredient
Cooking a cactus in a furnace results in green dye, giving 1 point of experience for each cactus item cooked.

This recipe awards 1 experience in Java Edition and 0.2 in Bedrock Edition.

Composting
Placing a cactus into a composter has a 50% chance of raising the compost level by 1.

Block data
In Bedrock Edition, cacti use the following data values:

Trivia

 * The bottom of a cactus block does not deal damage to mobs. $$, the top of a cactus also does not deal damage.
 * Cacti can be placed underwater, provided they are placed on sand, and they grow if they break the surface.
 * Cacti can be placed next to saplings, but the cactus breaks when the tree grows.
 * Endermen can move and place cacti. Thus, they can increase the cactus population in deserts by moving cactus blocks as they grow.
 * Signs can be placed on top of cacti.
 * It is possible for cacti to generate on blocks other than sand due to terrain generation; refer to the gallery for examples.
 * Cactus can be used in the desert to see if the player is in a newly generated area. If most of the cacti around the player is only one block high, then it is most likely new land.
 * Dying from touching a cactus displays "[playername] was pricked to death" in the chat messages.
 * It is possible to place blocks on top of a cactus.
 * It is possible to place redstone next to a cactus block and the block won't be destroyed.
 * By placing more cactus blocks on top of a cactus, it is possible to create an arbitrarily tall cactus. However, it does not grow naturally.
 * Chorus flowers, a fully solid block, can be placed next to cacti without it breaking.