如何在Java中减去两个列表/数组的值?

如何在Java中减去两个列表/数组的值?,java,arrays,list,subtraction,Java,Arrays,List,Subtraction,我正在从事一个Java项目,我遇到了一个问题。我想让列表/数组c中的两个列表或数组a和b相减,但我不知道怎么做。我希望“a[I]-b[I]”应该出现在下一个列表c中,其中的值应该是c[I],同样,对于5-2=3,任何建议和帮助都将不胜感激 代码: public static void länge(){ { BufferedReader br=null; 试一试{ br=新的BufferedReader(新的文件阅读器(新文件(“C:\\Users/Voodoothechild/Desktop/P

我正在从事一个Java项目,我遇到了一个问题。我想让列表/数组c中的两个列表或数组a和b相减,但我不知道怎么做。我希望“a[I]-b[I]”应该出现在下一个列表c中,其中的值应该是
c[I]
,同样,对于5-2=3,任何建议和帮助都将不胜感激

代码:

public static void länge(){
{
BufferedReader br=null;
试一试{
br=新的BufferedReader(新的文件阅读器(新文件(“C:\\Users/Voodoothechild/Desktop/Pidata/Anfang.txt”));
字符串行=null;
而((line=br.readLine())!=null){
{
BufferedReader bro=null;
试一试{
bro=新的BufferedReader(新的文件阅读器(新文件(“C:\\Users/Voodoothechild/Desktop/Pidata/Ende.txt”));
字符串行=空;
而((lines=br.readLine())!=null){
字符串[]anfang=line.split(“\n”);
String[]ende=lines.split(“\n”);
List an=new ArrayList();
List en=新的ArrayList();

对于(int index=0;index来说,这很简单。在解决编程问题之前,一定要分步进行。以你的问题为例。你需要用值从两个数组中减去值

int[]list1={4,2,1}

int[]list2={2,2,-1}

现在你有了两个列表。好的,下一步,写一个循环遍历列表。但是首先要确保两个列表的长度相同,否则你会从bounce中得到一个索引

for(int i =0; i< list1.length; i++)
    {
      list3[i] = list1[i] - list2[i];
    }
for(int i=0;i
无论如何,这是完整的答案。一定要理解它

公共类减法 {

publicstaticvoidmain(字符串[]args)
{
int[]list1={4,2,1};
int[]list2={2,2,-1};
int[]list3=新int[list1.length];
//循环列表
for(int i=0;i

}这很简单。在解决编程问题之前,一定要分步进行。以你的问题为例。你需要用值从两个数组中减去值

int[]list1={4,2,1}

int[]list2={2,2,-1}

现在你有了两个列表。好的,下一步,写一个循环遍历列表。但是首先要确保两个列表的长度相同,否则你会从bounce中得到一个索引

for(int i =0; i< list1.length; i++)
    {
      list3[i] = list1[i] - list2[i];
    }
for(int i=0;i
无论如何,这是完整的答案。一定要理解它

公共类减法 {

publicstaticvoidmain(字符串[]args)
{
int[]list1={4,2,1};
int[]list2={2,2,-1};
int[]list3=新int[list1.length];
//循环列表
for(int i=0;i

}这里有一个非常简单的答案,您可以将其应用到您的程序中

public static void main(String[] args) {
    int[] a = new int[4];
    int[] b = new int[4];
    int[] c = new int[4];

    a[0] = 5;
    a[1] = 12;
    a[2] = 20;
    a[3] = 50;
    b[0] = 1;
    b[1] = 2;
    b[2] = 3;
    b[3] = 4;

    for(int i=0; i<a.length; i++){
       c[i] = a[i] - b[i];
        System.out.println(c[i]);
    }
}
publicstaticvoidmain(字符串[]args){
int[]a=新的int[4];
int[]b=新的int[4];
int[]c=新的int[4];
a[0]=5;
a[1]=12;
a[2]=20;
a[3]=50;
b[0]=1;
b[1]=2;
b[2]=3;
b[3]=4;

对于(inti=0;i,这里有一个非常简单的答案,您可以应用到您的程序中

public static void main(String[] args) {
    int[] a = new int[4];
    int[] b = new int[4];
    int[] c = new int[4];

    a[0] = 5;
    a[1] = 12;
    a[2] = 20;
    a[3] = 50;
    b[0] = 1;
    b[1] = 2;
    b[2] = 3;
    b[3] = 4;

    for(int i=0; i<a.length; i++){
       c[i] = a[i] - b[i];
        System.out.println(c[i]);
    }
}
publicstaticvoidmain(字符串[]args){
int[]a=新的int[4];
int[]b=新的int[4];
int[]c=新的int[4];
a[0]=5;
a[1]=12;
a[2]=20;
a[3]=50;
b[0]=1;
b[1]=2;
b[2]=3;
b[3]=4;

对于(int i=0;i,可以使用流API轻松完成:

int[] list1 = {4,2,1};
int[] list2 = {2,2,-1};

IntStream.range(0, list1.length)
  .mapToObj(i -> list1[i] - list2[i])
  .collect(Collectors.toList());
或者更容易使用Javaslang:

Stream.range(0, list1.length)
  map(i -> list1[i] - list2[i]);
或者将两个列表压缩在一起:

List.ofAll(list1)
  .zip(List.ofAll(list2))
  .map(t -> t._1 - t._2);

使用流API可以轻松完成此操作:

int[] list1 = {4,2,1};
int[] list2 = {2,2,-1};

IntStream.range(0, list1.length)
  .mapToObj(i -> list1[i] - list2[i])
  .collect(Collectors.toList());
或者更容易使用Javaslang:

Stream.range(0, list1.length)
  map(i -> list1[i] - list2[i]);
或者将两个列表压缩在一起:

List.ofAll(list1)
  .zip(List.ofAll(list2))
  .map(t -> t._1 - t._2);
答案是removeAll类集合的方法

arraylists1=新的ArrayList(Arrays.asList(a1));
ArrayList s2=新的ArrayList(Arrays.asList(a2));
s1.移除所有(s2);
整数[]结果=s1.toArray(新整数[s1.size()]);
答案是移除所有类集合的方法

arraylists1=新的ArrayList(Arrays.asList(a1));
ArrayList s2=新的ArrayList(Arrays.asList(a2));
s1.移除所有(s2);
整数[]结果=s1.toArray(新整数[s1.size()]);

请修复代码的格式,这只会帮助您解决问题。顺便说一句,循环每一对或每一个元素并进行减法是我应该怎么做的。我应该循环列表还是数组?使用其中任何一个都可以。如果您希望两组数据始终具有相同的大小,我可能倾向于使用数组。请修复代码的格式,这只会帮助您解决问题。顺便说一句,循环每一对或每一个元素并进行减法是我应该如何做的。我应该循环一个列表还是一个数组?tnx Mate使用其中任何一个都可以。如果您希望两组数据始终具有相同的大小,我可能倾向于使用数组。您应该uld添加检查以确保列表1和列表2的大小相同。但是您知道了。我有一个想法:java.lang.NullPointerException“ausgespuckt:int[]results=null;for(int i=0;i