一个检查原代码括号配对的程序,栈的应用

2008-02-23 09:17:29来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

/**
*write by liujun
*/
import Java.io.*;
public class Stack
{
private char myStack[];
private int top;
private int len;
public Stack(int len)
{
myStack = new char[len];
this.len = len;
top = -1;
}
public boolean push(char value)
{
if(isFull())
return false;
else
myStack[ top] = value;
return true;
}
public char pop()
{
if (top<0)
return ' ';
return myStack[top--];
}
public char peek()
{
return myStack[top];
}
public boolean isFull()
{
return top 1 == len;
}
public boolean isEmpty()
{
return top == -1;
}
public static void main(String args[]) throws IOException
{
String s = getString();
Stack st = new Stack(s.length());
char c;
int i=0;
for(i=0;i<s.length();i )
{
c = s.charAt(i);
switch(c)
{
case '{':
st.push(c);
break;
case '[':
st.push(c);
break;
case '(':
st.push(c);
break;
}

if(c == '}' || c == ']' || c == ')'){
char c2 = st.pop();
System.out.println(c "c2" c2);
if((c2 != '{' && c == '}') || (c2 != '['&& c== ']') || (c2 != '(' && c ==')'))
{
System.out.println("errer");
break;
}
}

}
if(i == s.length() && st.isEmpty())
System.out.println("right");
else
System.out.println("error");
}
public static String getString() throws IOException
{
FileReader f = new FileReader("D:\\A1.java");
String s= "";
int c;
while((c = f.read()) != -1)
{
s = s (char)c;
}
return s;
}
}

上一篇: 自己写的一个JSP上传文件和下载文件的JavaBean
下一篇: J2EE应用程序异常处理框架

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:说说Continuation Server

下一篇:J2EE应用程序异常处理框架