I understand z-buffering as being "object-first" in contrast to "pixel-first" since the for loop starts with checking each triangle in the scene rather than each pixel. However, is this the same as rasterization, or is rasterization just a general technique that encompasses z-buffering?
Z-buffering is easy to implement depth-buffering, where you check whether pixel is visible or not (in case of transparency, it is handled separately). This is optimisation to avoid calculating color at every pixel but instead check which are nearest to the screen, paying with memory.
Rasterization is general technique converting vector graphics into rasters, including filling triangle with pixels. Different technique is to use raytracing or photon mapping, in that case triangles are not rasterized (as in scanline rasterization) but rays (photons) are cast and traced.
So, yes, z-buffering is part of realisation of rasterization.