相关疑难解决方法(0)

在Java中将'ArrayList <String>转换为'String []'

我如何在Java中将ArrayList<String>对象转换为String[]数组?

java arrays string collections arraylist

962
推荐指数
14
解决办法
66万
查看次数

为什么Java Generics不支持原始类型?

为什么Java中的泛型使用类而不是基本类型?

例如,这工作正常:

List<Integer> foo = new ArrayList<Integer>();
Run Code Online (Sandbox Code Playgroud)

但这是不允许的:

List<int> bar = new ArrayList<int>();
Run Code Online (Sandbox Code Playgroud)

java generics primitive

222
推荐指数
5
解决办法
7万
查看次数

将几个字节数组复制到一个大字节数组

我有一个大byte[]数组和很多小byte数组(大数组的长度是长数组的小数组).是否有一些快速方法可以将一个数组从开始位置复制到另一个数组,而不是手动为每个字节使用for循环?

java arrays

35
推荐指数
4
解决办法
6万
查看次数

合并两个整数数组

有没有办法从两个中创建一个数组?例如

int[] array1 = {1,2,3};
int[] array2 = {4,5,6};
int[] array1and2 = array1 + array2;
Run Code Online (Sandbox Code Playgroud)

java arrays

27
推荐指数
3
解决办法
11万
查看次数

连接两个int []

有简单的解决方案可以连接两个String[]Integer[]在java中Streams.因为int[]经常使用.连接两个有什么简单的方法int[]吗?

这是我的想法:

int[] c = {1, 34};
int[] d = {3, 1, 5};
Integer[] cc = IntStream.of(c).boxed().toArray(Integer[]::new);
Integer[] dd = Arrays.stream(d).boxed().toArray(Integer[]::new);
int[] m = Stream.concat(Stream.of(cc), Stream.of(dd)).mapToInt(Integer::intValue).toArray();
System.out.println(Arrays.toString(m));

>>
[1, 34, 3, 1, 5]
Run Code Online (Sandbox Code Playgroud)

它可以工作,但它实际上转换int[]Integer[],然后再转换Integer[]回来int[].

java arrays lambda java-8 java-stream

24
推荐指数
2
解决办法
1580
查看次数

用Java加入两个数组?

可能重复:
如何在Java中连接两个数组?

我有两个对象

HealthMessage[] healthMessages1;
HealthMessage[] healthMessages2;

HealthMessage[] healthMessagesAll;

healthMessages1 = x.getHealth( );   
healthMessages2 = y.getHealth( );
Run Code Online (Sandbox Code Playgroud)

我应该如何加入这两个对象,所以我只能返回一个:

return healthMessagesAll;
Run Code Online (Sandbox Code Playgroud)

推荐的方式是什么?

java

14
推荐指数
3
解决办法
9万
查看次数

如何在方法调用中将数组解压缩到不同的参数中

我想知道是否可以将Object数组解压缩到接受vargs的方法调用上的单独Object中.这个问题与类似.

我有一个代码:

public class Test {
    public static Object doWork(Object... objects){
        System.out.println(objects.length);
        return objects;
    }

    public static void main(String[] args){
        Object res = doWork("one", "two");
        res = doWork("three", res);
    }
}
Run Code Online (Sandbox Code Playgroud)

我想res在第二次调用中解压缩对象,这样它就会收到一个长度为3而不是长度为2的对象数组(其中第二个位置是一个长度为2的Object数组,然后是所有三个参数).

在Java中甚至可能吗?


更详细:

通过做

Object res = doWork("one", "two");
res = doWork("three", res);
Run Code Online (Sandbox Code Playgroud)

第二个调用被调用为:

doWork( Object[ "three", Object[ "one", "two" ] ] )
Run Code Online (Sandbox Code Playgroud)

在哪里我想:

doWork(Object[ "one", "two", "three" ] )
Run Code Online (Sandbox Code Playgroud)

我知道这可以通过以下方式实现:

public static void main(String[] args){
res = doWork("one", "two");
    List<Object> los = Arrays.asList(res);
    los …
Run Code Online (Sandbox Code Playgroud)

java

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

如何在Java中连接字符串数组

我想知道如何在Java中连接4个字符串数组.

有一个问题已经存在. 如何在Java中连接两个数组?

但我试图复制它,但它对我不起作用.

这就是我的代码:

调用方法:

concatAll(jobs1, jobs2, jobs3, jobs4);
Run Code Online (Sandbox Code Playgroud)

方法本身:

public String[] concatAll(String[] jobsA, String[] jobsB, String[] jobsC, String[] jobsD) {
    int totalLength = jobsA.length;
    for (String[] array : jobsD) {
        totalLength += array.length;
    }

    String[] result = Arrays.copyOf(jobsA, totalLength);

    int offset = jobsA.length;

    for (String[] array : jobsD) {
        System.arraycopy(array, 0, result, offset, array.length);
        offset += array.length;
    }
    return result;
}
Run Code Online (Sandbox Code Playgroud)

java arrays

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

如何将数组复制到另一个已包含数据的数组中?

我怎么会复制一个数组说

float arraytobecopied[] = {1.20,2.50,3.60};
Run Code Online (Sandbox Code Playgroud)

到另一个已经有数据的数组已经说过了

float newarray[] = {5.20,6.30,4.20};
Run Code Online (Sandbox Code Playgroud)

我想将它添加arraytobecopied到新数组的末尾并保留数组中的值.另外作为旁注,这将是一个正在进行的过程,每次都会添加到数组的末尾.

我应该只使用for循环吗?或者,还有更好的方法.(不能使用数组)已经尝试过:(

java arrays

7
推荐指数
2
解决办法
4万
查看次数

JavaScript 方法中“splice(a,b,...)”的 Java 等效方法

someArray.splice(a,b,...)JavaScript 中的方法向数组添加或删除项目。用 Java 语言实现这种方法有什么好的、简单的解决方案呢?假设我们有String[]数组。

javascript java splice

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