これは宿題であり、出力に問題があります。 Integer.toString()が私に必要な結果を与えていないことを除いて、すべてが期待どおりに動作します。私はそれらを実際の言葉に変換したいときにはまだ数字の束を出力しています。ここでは、コードと出力です:単語の整数表現を文字列に変換する
import java.io.*;
public class NumStream extends OutputStream
{
public void write(int c) throws IOException
{
StringBuffer sb = new StringBuffer();
switch(c)
{
case ' ': sb.append(" ");
break;
case '1': sb.append("One");
break;
case '2': sb.append("Two");
break;
case '3': sb.append("Three");
break;
case '4': sb.append("Four");
break;
case '5': sb.append("Five");
break;
case '6': sb.append("Six");
break;
case '7': sb.append("Seven");
break;
case '8': sb.append("Eight");
break;
case '9': sb.append("Nine");
break;
case '0': sb.append("Zero");
break;
default: sb.append(Integer.toString(c));
break;
}
System.out.print(sb);
}
public static void main(String[] args)
{
NumStream ns = new NumStream();
PrintWriter pw = new PrintWriter(new OutputStreamWriter(ns));
pw.println("123456789 and ! and # ");
pw.flush();
}
}
出力は次のとおりです。OneTwoThreeFourFiveSixSevenEightNine 97110100 33 97110100 35 1310
誰かがこのフォーラムで簡単にコードをフォーマットする方法を教えてくださいできますか?私は手作業で8行のスペースをインデントしなければならず、もっと簡単な方法が必要です。
タブキーを使用...また、ほとんどのプログラミングテキストエディタは、最後の行が開始された場所に新しい行を自動的にインデントします。 –
最も簡単な方法は、インデント(タブなし)と各行に余分な4スペースのインデントを使用してコードをフォーマットするエディタを使用することです。次に、エディタからSO入力ボックスにカット・ペーストします。 –