首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

非反复数字转换(二进制)

2012-08-26 
非重复数字转换(二进制)import java.util.ArrayListimport java.util.Listpublic class BinaryTest {pub

非重复数字转换(二进制)

import java.util.ArrayList;  import java.util.List;    public class BinaryTest {        public static List<Integer> binaryNum(int targetNum) {          List<Integer> list = new ArrayList<Integer>();          if (targetNum > 0){          int baseNum = 1;          int sumNum = 0;          int count = 0;          while (baseNum < 1024) {              if ((sumNum = targetNum & baseNum) != 0) {                  list.add(sumNum);                  if (targetNum == (count += sumNum)) {                      break;                  }              }              baseNum = baseNum << 1;          }          }        return list;      }            public static void main(String[] args) {           System.err.println(binaryNum(63));                  //[1, 2, 4, 8, 16, 32]      }    } 

热点排行