One of the biggest gotchas for people new to Powershell is the handling of null, empty arrays, and single-element arrays. If you come from another language such as c# you’ll be shocked. And even for an experienced Powershell writer, the behavior can lead to ugly bugs.
Other people have covered this topic before. Here’s a good discussion by Keith Hill. But I wanted a short reference with examples of the strange (to many people) behavior, so I’m writing this today somewhat for my own benefit. But maybe someone else will find it useful.