|
Java 实例 - 压栈出栈的方法实现字符串反转
以下实例演示了使用用户自定义的方法 StringReverserThroughStack() 来实现字符串反转: StringReverserThroughStack.java 文件 import java . io . IOException ;
public class StringReverserThroughStack {
private String input ;
private String output ;
public StringReverserThroughStack ( String in ) {
input = in ;
}
public String doRev ( ) {
int stackSize = input . length ( ) ;
Stack theStack = new Stack ( stackSize ) ;
for ( int i = 0 ; i < input . length ( ) ; i ++ ) {
char ch = input . charAt ( i ) ;
theStack . push ( ch ) ;
}
output = " " ;
while ( ! theStack . isEmpty ( ) ) {
char ch = theStack . pop ( ) ;
output = output + ch ;
}
return output ;
}
public static void main ( String [ ] args )
throws IOException {
String input = " www.javathinker.net " ;
String output ;
StringReverserThroughStack theReverser =
new StringReverserThroughStack ( input ) ;
output = theReverser . doRev ( ) ;
System . out . println ( " 反转前: " + input ) ;
System . out . println ( " 反转后: " + output ) ;
}
class Stack {
private int maxSize ;
private char [ ] stackArray ;
private int top ;
public Stack ( int max ) {
maxSize = max ;
stackArray = new char [ maxSize ] ;
top = - 1 ;
}
public void push ( char j ) {
stackArray [ ++ top ] = j ;
}
public char pop ( ) {
return stackArray [ top -- ] ;
}
public char peek ( ) {
return stackArray [ top ] ;
}
public boolean isEmpty ( ) {
return ( top == - 1 ) ;
}
}
} |
以上代码运行输出结果为:
反转前: www.javathinker.net
反转后: net.javathinker.www
程序猿的技术大观园:www.javathinker.net
[这个贴子最后由 flybird 在 2020-01-26 12:18:57 重新编辑]
|
网站系统异常
系统异常信息 |
Request URL:
http://www.javathinker.net/WEB-INF/lybbs/jsp/topic.jsp?postID=1544
java.lang.NullPointerException
如果你不知道错误发生的原因,请把上面完整的信息提交给本站管理人员。
|
|