我如何在Java中将ArrayList<String>对象转换为String[]数组?
为什么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) 我有一个大byte[]数组和很多小byte数组(大数组的长度是长数组的小数组).是否有一些快速方法可以将一个数组从开始位置复制到另一个数组,而不是手动为每个字节使用for循环?
有没有办法从两个中创建一个数组?例如
int[] array1 = {1,2,3};
int[] array2 = {4,5,6};
int[] array1and2 = array1 + array2;
Run Code Online (Sandbox Code Playgroud) 有简单的解决方案可以连接两个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中连接两个数组?
我有两个对象
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)
推荐的方式是什么?
我想知道是否可以将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中连接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) 我怎么会复制一个数组说
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循环吗?或者,还有更好的方法.(不能使用数组)已经尝试过:(
someArray.splice(a,b,...)JavaScript 中的方法向数组添加或删除项目。用 Java 语言实现这种方法有什么好的、简单的解决方案呢?假设我们有String[]数组。
java ×10
arrays ×6
arraylist ×1
collections ×1
generics ×1
java-8 ×1
java-stream ×1
javascript ×1
lambda ×1
primitive ×1
splice ×1
string ×1