>>分享Java编程技术,对《Java面向对象编程》等书籍提供技术支持 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 27243 个阅读者 刷新本主题
 * 贴子主题:  Java入门实用代码:压栈出栈的方法实现字符串反转 回复文章 点赞(0)  收藏  
作者:flybird    发表时间:2020-01-21 23:44:33     消息  查看  搜索  好友  邮件  复制  引用

  

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 重新编辑]
  Java面向对象编程-->输入与输出(上)
  JavaWeb开发-->JavaWeb应用入门(Ⅱ)
  JSP与Hibernate开发-->映射对象标识符
  Java网络编程-->通过JDBC API访问数据库
  精通Spring-->创建综合购物网站应用
  Vue3开发-->Vue组件开发高级技术
  [分享]遊藝場開分員會很難嗎?原來工作項目是這些!
  解密Java类文件的数据结构
  Java集合框架学习---深入探究ArrayList源码
  孙卫琴的视频课程的源代码下载
  观察者模式和发布订阅模式的区别
  Java虚拟机(JVM)参数配置说明
  使用策略模式优化代码实践,如何让项目快速起飞
  请求大佬们的帮助
  使用 RocketMQ 事务消息,实现分布事务
  NoClassDefFoundError和ClassNotFoundException的区别
  Eclipse使用指南:快速修复功能
  java 支持分词的高性能拼音转换工具,速度是 pinyin4j 的两倍
  Java入门实用代码:数组转集合
  Java入门实用代码:将文件内容复制到另一个文件
  Java入门实用代码:数组元素的反转
  更多...
 IPIP: 已设置保密
楼主      
1页 0条记录 当前第1
发表一个新主题 开启一个新投票 回复文章


中文版权所有: JavaThinker技术网站 Copyright 2016-2026 沪ICP备16029593号-2
荟萃Java程序员智慧的结晶,分享交流Java前沿技术。  联系我们
如有技术文章涉及侵权,请与本站管理员联系。