//输入字符串,根据范围取出再取反输出
package train;
public class Demo58 {
public static void main(String[] args) {
System.out.println(new RangeInvertString("123456789", 1, 5));
}
public static class RangeInvertString{
private String string;
private StringBuffer AfterString;
private int start;
private int end;
public StringBuffer getAfterString() {
return AfterString;
}
public void setAfterString(StringBuffer afterString) {
AfterString = afterString;
}
public int getStart() {
return start;
}
public void setStart(int start) {
this.start = start;
}
public int getEnd() {
return end;
}
public void setEnd(int end) {
this.end = end;
}
public String getString() {
return string;
}
public void setString(String string) {
this.string = string;
}
public RangeInvertString(String string,int start,int end) {
if (string !=null && start >=0 && end >start && end<string.length()){
this.string = string;
this.start = start;
this.end = end;
invert();
toString();
}
else try {
throw new Exception("您的输入不合法");
} catch (Exception e) {
System.out.println(e.getMessage());
System.exit(0);//正常退出程序
}
}
public void invert(){
StringBuffer stringBuffer = new StringBuffer();
stringBuffer.append(this.string);
String take = stringBuffer.substring(this.start, this.end+1);//取
StringBuffer takeBuffer = new StringBuffer(take);//String转成StringBuffer
setAfterString(takeBuffer.reverse());//再反转
}
@Override
public String toString() {
return "根据您输入的字符串范围反转再输出_" +
"字符串是:" + AfterString;
}
}
}
根据您输入的字符串范围反转再输出_字符串是:9876543