相关疑难解决方法(0)

在android中将byte[]转换为十六进制字符串

我正在尝试将 byte[] 转换为十六进制字符串,并将相同的十六进制字符串转换为 android 中的 byte[] ,数据不匹配。

前任 :

收到字节[]数据:[B@b39c86a

转换后的十六进制字符串:8be897cc3c4d9e5dd6a6bbd106d8e8d487691b56

当我解码十六进制字符串时,我得到[B@ea6d15b,但它应该是[B@b39c86a

我正在使用下面的代码进行转换。

public String byte2hex(byte[] a) {
        /*StringBuilder sb = new StringBuilder(a.length * 2);

        for (byte b : a)
            sb.append(String.format("%02x", b & 0xff));
        return sb.toString();*/

        String hexString = "";

        for(int i = 0; i < a.length; i++){
            String thisByte = "".format("%x", a[i]);
            hexString += thisByte;
        }

        return hexString;

    }
    public static byte[] hexStringToByteArray(String s) {
       /* int len = s.length();
        byte[] data = new …
Run Code Online (Sandbox Code Playgroud)

java encryption android java-security android-security

1
推荐指数
1
解决办法
1万
查看次数

如何在JOptionPane中打印数组?

例如,我有一个int和size 3类型的数组,它有元素1,2,3当我尝试JOptionPane用循环打印它时,它会生成三个不同的窗格.

当我尝试:

JOptionPane.showMessageDialog( null, array );
Run Code Online (Sandbox Code Playgroud)

它给出了垃圾值.

我到处搜索,但找不到解决办法.如何在选项窗格中显示阵列?

java arrays swing joptionpane

0
推荐指数
1
解决办法
2万
查看次数

为什么我的阵列不能正确打印出来?

我正在尝试使用下面的代码编写一个简单的程序来创建一个单维数组,然后您可以使用索引号调用一个值.我使用作为我的编译器.每当我试着调试或运行程序,全阵列打印出来,因为这:[I@1fa8d3b.

class Array    
{
public static void main(String[] args)
{
    int[] MyArray = new int[] {15, 45, 34, 78, 65, 47, 90, 32, 54, 10};
    System.out.println("The full array is:");
    System.out.println(MyArray);
    System.out.println("The 4th entry in the data is: " + MyArray[3]);
}
}
Run Code Online (Sandbox Code Playgroud)

正确的数据条目在被调用时打印出来.我试图在网上寻找我应该做什么的答案,但我找不到任何有效的方法.我刚刚开始学习Java所以可能有一个非常简单的答案,我只是忽略了.如果有人有任何想法,我将非常感激.

java arrays

0
推荐指数
1
解决办法
1万
查看次数

Java数组,打印存储在数组中的内容

如何以简单的方式打印存储在数组中的内容.过去3个小时我一直在盯着这个!

import java.util.Scanner;

public class December2012 {

    public static void main(String[] args) {

        int[] array = new int[100];
        int sum = 0;
        int i = 0;
        Scanner input = new Scanner(System.in);
        while (sum <= 100 && i < array.length) {
            System.out.print("Write in the " + (i + 1) + "th number: ");
            array[i] = input.nextInt();
            sum += array[i];
            i++;

        }
        System.out.print("You added: ");
        System.out.print(array[i] + " ");

        System.out.println("\nsum is " + sum);
    }
}
Run Code Online (Sandbox Code Playgroud)

java arrays

0
推荐指数
1
解决办法
925
查看次数

如何在java中打印数组

public class ArrayUtilities{
  public static void main(String[] args){
    int[] array1= {1,2,3,4,5,10,15,30,32};
    System.out.println(copy(array1));
  }
public static int[] copy(int[] array){
  int[] newArray = new int[array.length];
  for(int i = 0; i < array.length; i++){
    array[i] = newArray[i];
  }
  return newArray;
}
}
Run Code Online (Sandbox Code Playgroud)

我不得不写一个复制数组的方法.问题是每当我运行这段代码时它给了我[I @ 68e4e358,而不是数组.请帮忙提前谢谢!

java arrays

0
推荐指数
1
解决办法
123
查看次数

将字符数组转换为字符串

为什么toString方法返回乱码?

char[] arrays = {'a','b','c'};
  { a, b, c }
arrays.toString()
  "[C@6519ceb1"
Run Code Online (Sandbox Code Playgroud)

java

0
推荐指数
1
解决办法
733
查看次数

使用Java在一个println语句中打印数组的所有元素

public class Test {

    public static void main(String[] args) {

        int[] a= new int[]{1,2,3};

        System.out.println(a);


    }
}
Run Code Online (Sandbox Code Playgroud)

我希望得到一个编译或运行时错误.我接受了输出.它是" [I@1ba4806".它在Java中的原因是什么?

java arrays

0
推荐指数
1
解决办法
2万
查看次数

如何将[[Ljava.lang.String; @ 7defb4fb]转换为字符串

我正在尝试打印String,下面是代码:

Object[] objArr = data.get(key);
for (Object obj : objArr)
{
    System.out.println(obj);
    cell.setValue(obj);
}
Run Code Online (Sandbox Code Playgroud)

但我在控制台中得到以下输出:

[[Ljava.lang.String;@7defb4fb]
Run Code Online (Sandbox Code Playgroud)

我尝试了以下代码片段:

System.out.println(Arrays.toString(objArr));
System.out.println(Arrays.asList((objArr)));
System.out.println(objArr[k]);
Run Code Online (Sandbox Code Playgroud)

但是所有这些都给出了类似的奇怪输出:

[[Ljava.lang.String;@7defb4fb]
[[Ljava.lang.String;@7defb4fb]
[Ljava.lang.String;@7defb4fb
Run Code Online (Sandbox Code Playgroud)

如何从中获取字符串值?

**

编辑:

**我的问题是用Java打印和数组化的数组。第一件事是认识到它的嵌套数组,因此当我尝试遍历该数组并打印其元素时,它是在打印地址而不是元素的地址。

[Ljava.lang.String; @ 7defb4fb]

我的问题是将其识别为数组,然后再次遍历此数组以打印元素。因此,这是解决方案

if (obj instanceof String[]) {
        String[] strArray = (String[]) obj;
        System.out.println(Arrays.toString(strArray));
        // System.out.println(obj);
    }
Run Code Online (Sandbox Code Playgroud)

java arrays

0
推荐指数
1
解决办法
2万
查看次数

如果java是按值传递的,那么为什么显示数组名称会返回乱码?

我很困惑为什么我不能使用该语句来显示数组中的值?

System.out.println(intarray);

这是输出“[I@7852e922”

如果 java 是按值传递的,那么该语句不应该返回数组的值而不是对象引用。这是我使用的修复方法。

System.out.println(Arrays.toString(intarray));
Run Code Online (Sandbox Code Playgroud)

java arrays pass-by-reference

0
推荐指数
1
解决办法
600
查看次数

Java ArrayList&lt;String&gt; 到单个字符串而不使用循环

我有一个ArrayList<String>定期添加的。我想要做的是将整个 ArrayList 转换为 aString而不进行循环。谁能告诉我可以不使用循环吗?

编辑:所以我们找到了一些解决方案,比如

list.stream().collect(Collectors.joining());
Run Code Online (Sandbox Code Playgroud)

或者

String result = String.join(",", list);
Run Code Online (Sandbox Code Playgroud)

或其他一些。现在只是为了获取知识,我提出了一个问题,哪种方式是编译器的最佳方式?

java string arraylist string-concatenation

0
推荐指数
1
解决办法
791
查看次数