>>314 public class Bin { public static void main(String[] args) { final int START = Integer.parseInt("000000001", 2); final int END = Integer.parseInt("111111111", 2); StringBuffer sb = new StringBuffer("000000000"); for (int i = START; i <= END; i++) { sb.append(Integer.toBinaryString(i)); System.out.println(sb.substring(sb.length() - 9)); sb.setLength(9); } } }
念為2進数を扱うメソッドそのものを実装することが目的の場合用 public class Bin2 { public static void main(String[] args) { final int START = parseInt("000000001"); final int END = parseInt("111111111"); for (int i = START; i <= END; i++) showBinaryString(i); } private static int parseInt(String s) { int result = 0, len = s.length(); for (int i = 0; i < len; i++) result += result + s.charAt(i) - '0'; return result; } private static char[] buf = new char[9]; private static void showBinaryString(int i) { int j = 9; do { buf[--j] = (char)('0' + (i & 1)); } while ((i>>>= 1) != 0); while (j-- > 0) buf[j] = '0'; System.out.println(buf); } }