设为首页 加入收藏

TOP

括号匹配问题
2014-11-24 12:00:06 来源: 作者: 【 】 浏览:41
Tags:括号 匹配 问题
判断字符串中的括号是否匹配。
[java]
package com.huawei.scp.util;
import java.util.Stack;
public class ParenthesisMatching
{
public boolean check(String str)
{
Stack stack = new Stack();
boolean flag = true;
for (int i = 0; i < str.length() && flag; i++)
{
try
{
switch (str.charAt(i))
{
case '(':
case '[':
case '{':
stack.push(str.charAt(i));
break;
case ')':
if (stack.pop() != '(')
flag = false;
break;
case ']':
if (stack.pop() != '[')
flag = false;
break;
case '}':
if (stack.pop() != '{')
flag = false;
break;
}
}
catch (Exception e)
{
flag = false;
}
}
if (flag && !stack.isEmpty())
flag = false;
return flag;
}
public static void main(String[] args)
{
ParenthesisMatching pm = new ParenthesisMatching();
System.out.println("(: " + pm.check("("));
System.out.println("a(bc[d])e{fd}: " + pm.check("a(bc[d])e{fd}"));
System.out.println("a(bc]d: " + pm.check("a(bc]d"));
System.out.println("a(b(c)d: " + pm.check("a(b(c)d"));
System.out.println("a(b)c)d: " + pm.check("a(b)c)d"));
}
}
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇启动jenkins时,failed 下一篇xml方式---spring的AOP拦截用户操..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: