ちょっとしたプログラムを作成したので書いておく。
| public class Reverse { private String s; private java.util.Stack stack = new java.util.Stack(); public Reverse(String s_) throws Exception { if (s_.length() < 1 || 1000 < s_.length()) { throw new Exception(“文字列長が不正です”); } s = s_; } public String execute() { char[] cs = s.toCharArray(); for (int i=0 ; i<cs.length ; i++) { stack.push(new Character(cs[i])); } StringBuffer sb = new StringBuffer(); while (!stack.empty()) { Character c = (Character)stack.pop(); sb.append(c.charValue()); } return new String(sb); } public static void main(String[] args) { try { String s = “0123456789”; Reverse rev = new Reverse(s); String rs = rev.execute(); System.out.println(“入力文字列:”+s); System.out.println(“反転文字列:”+rs); } catch(Exception e) { System.out.println(“エラーが発生しました”); } } } |