I completely disagree with Aaron Digulla's entire answer as it pertains to Swing.
I have found Swing to be, while not the best design and a little convoluted, reasonably simple and workable, and ultimately quite well thought out. Further, it most definitely is capable of what is required for almost all GUI app's.
Using the native LAF, the application will look and function enough like a native application to receive a passing grade (IMO).
As to the bit about layouts... it's true that the Swing layout's are hardish to use and need nesting (sometimes a fair amount thereof) to get the desired results, but the concept of Layouts are one of the best thing about doing GUI's in Java. Take the time to understand what they do for you and get yourself a good table-based layout (e.g. MatrixLayout, TableLayout, JGoodies FormLayout or MigLayout) which will eliminate 99% of the nesting. A table-based layout will also make your GUI simpler and will make the code better reflect the end result.
So, my advice is that if QT does things in a way in which you would prefer or provides functionality that Swing doesn't, then by all means look into it - provided that you are happy with distributing it's Java and native components with your app, and that it targets the platforms on which you want to run (or may want to run in the future).
Otherwise, it's hard to beat Swing's flexibility and the fact that it's baked into every Java install, and it's ability for you to easily tailor look and behavior.
Oh, and to be fair, I have not looked at QT before - But I have about 6 years of active Swing and AWT development, comprising 1 commercially deployed AWT application and 3 such (non-trivial) Swing applications, plus a number of smaller personal Swing apps.