import java.io.*;
public class StringBufferToString{
public static void main(String[] args){
char ch;
try{
System.out.println("Enter Width!");
int length=System.in.read();
StringBuffer strb=new StringBuffer(length);
while((ch=(char)System.in.read())!='\n') {
strb.append(ch);
}
} catch(IOException e){}
String str=strb.toString();
System.out.println(str);
}
}
还有一个问题是:怎么样输入一个整数?
StringBuffer允许修改,不是每个不同的字符串都要生成一个新的对象,http://www.infowe.com/web/956.htm对于第二个问题:
while 循环完成后
Double.parseInt(strb);
总之用Java写命令行程序是很麻烦的,还不如用命令行参数方便。
public class StringBufferToString{
public static void main(String[] args){
char ch;
try{
System.out.println("Enter Width!");
int length=System.in.read();
StringBuffer strb=new StringBuffer(length);
while((ch=(char)System.in.read())!='\n') {
strb.append(ch);
}
String str=strb.toString();
System.out.println(str);
} catch(IOException e){}
}
}
互相学习 共同提高
在Java语言中,String类被设计不变模式,每一个字符串都将被实现为一个字符串对象,它表示的是字符串常量。String类任何的内容发生改变,Java都会分配新的对象存储新的内容。StringBuffer表示的是字符串变量。字符串变量的内容是可以改变的,可以进行扩充、修改等操作。它们都可以用于表示字符串,只是适用条件不一样吧了。
String->StringBuffer 好比 10 = i;~_~