java - 让 ArrayList.get() 返回

标签 java

我目前正在尝试编写一个简单的函数,将整数转换为带零填充的 3 位二进制字符串,反之亦然。为了测试 intToBinary 方法,我创建了一个简单的循环,将整数 1 到 5 相加并将每个数字转换为二进制字符串,然后将这些二进制字符串组合成更大的字符串。

  ArrayList cityList = new ArrayList();
  String gene = "";
  for(int i = 1; i<5;i++){
    cityList.add(i, i);
    gene += intToBinary(i);
    System.out.println(gene + "" + cityList.get(i));
  }
  System.out.println(gene);

当我尝试运行这一小段代码时,我在 cityList.get(i) 处遇到错误 Object.get(i) 方法不应该在索引 i 处返回一个变量吗? 我尝试通过执行 int cityNum = (int)cityList.get(i) 来初始化另一个 int 但出现错误,指出找到了 Object一个 int

Object.add(int index, Object) 中使用的变量类型是 int 所以 get 方法应该返回一个 int变量。

最佳答案

如果我理解你的问题,你可以用类似的东西来做

for (int i = 0; i < Math.pow(2, 3); i++) {
    StringBuilder sb = new StringBuilder(Integer.toBinaryString(i));
    while (sb.length() < 3) {
        sb.insert(0, '0');
    }
    System.out.printf("%d = %s%n", i, sb.toString());
}

输出是

0 = 000
1 = 001
2 = 010
3 = 011
4 = 100
5 = 101
6 = 110
7 = 111

反之亦然,您可以使用 Integer.parseInt(String,int)喜欢

int val = Integer.parseInt("001", 2); // <-- 1

关于java - 让 ArrayList.get() 返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26520805/

相关文章:

java - 不匹配的属性值(| | 自动 | [初始 | 继承 | 未设置 | 还原])

java - Eclipse 不构建针对 5.0 Lollipop 的 Android 项目

java - Struts验证框架: Validation Summary is blank

java - 如何控制 maven-jetty-plugin 的 VM 参数?

java - 我们如何在每日闹钟时打开我的应用程序。我可以使用 Pushregistry 作为每日闹钟吗

java - Feign 配置未被使用

java - Stack 类中的 pop 和 isEmpty 方法如何工作

java - 无法加载图片 - 找不到图片

java - 为什么看似不必要地触发 G1 Full GC?

java - 在 try/catch block 中捕获异常后继续执行循环