文字列内の各単語を区切り、スタックに追加しようとしています。ここに私がこれを行うために書いたコードです。テスターを実行するたびに、常に空のスタックが返されますが、スタックには<body>
が含まれていませんか?文章のすべての単語をJavaの別の要素としてスタックに追加するにはどうすればよいですか?
import java.util.Stack;
public class HTML3{
//main method
public static boolean checkBalance(String str) {
Stack<String> stack = new Stack<String>();
String[] words = str.split(" ");
for (int i = 0; i < words.length; i++) {
String tag = words[i];
if(tag=="<body>" || tag=="<hl>" || tag=="<center>" || tag=="<p>" || tag=="<ol>" || tag=="<li>") {
stack.push(tag);
}
}
return stack.isEmpty();
}
public static void main(String[]args)
{
checkBalance("<body> <li>");
}
}
ループは、大文字と小文字の区別について気にしない場合には、 'for(String tag:words)' –