import java.util.Stack;
public class Demo {
/**
* @param args
*/
public static String reverse(String q)
{
Stack<String> stack = new Stack<String>();
int l = 0;
for (int i = 0; i < q.length(); i++) {
switch(q.charAt(i)) {
case '!':
case ',':
case ' ': {
stack.push(q.substring(l, i));
l = i + 1;
stack.push(q.substring(i, l));
}
}
}
if (l < q.length()) stack.push(q.substring(l));
String str = "";
while (!stack.isEmpty())
{
str = str + (stack.pop());
}
return str;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "I am a boy!";
System.out.println(reverse(str));
}
}
public class Demo {
/**
* @param args
*/
public static String reverse(String q)
{
Stack<String> stack = new Stack<String>();
int l = 0;
for (int i = 0; i < q.length(); i++) {
switch(q.charAt(i)) {
case '!':
case ',':
case ' ': {
stack.push(q.substring(l, i));
l = i + 1;
stack.push(q.substring(i, l));
}
}
}
if (l < q.length()) stack.push(q.substring(l));
String str = "";
while (!stack.isEmpty())
{
str = str + (stack.pop());
}
return str;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "I am a boy!";
System.out.println(reverse(str));
}
}