Julia的import java.util.Arrays;
import java.util.Scanner;
public class EvensAndOdds
{
private static int countEm(int[] array)
{
int numOdd = 0;
for(int i=0; i< array.length; i++)
if(array[i] % 2 == 1)
numOdd ++;
return numOdd;
}
public static int[] getAllEvens(int[] array)
{
int x = 0;
int[] evens = new int[array.length - countEm(array)];
for(int i=0; i<array.length; i++)
{
if(array[i]%2==0)
{
evens[x] = array[i];
x ++;
}
}
return evens;
}
public static int[] getAllOdds(int[] array)
{
int y = 0;
int[] odds = new int[countEm(array)];
for (int i = 0; i < array.length; i++)
{
if (array[i] %2 == 1)
{
odds[y] = array[i];
y++;
}
}
return odds;
}
public static void main(String[] args)
{
int[] input = {2,4,6,8,10,12,14};
System.out.println(Arrays.toString(input));
System.out.println("odds = " + EvensAndOdds.getAllOdds(input));
System.out.println("evens =" + EvensAndOdds.getAllEvens(input));
}
}
和理解语法可以轻松映射多维数组的所有元素。
是否支持对数组的 slices 进行映射?
作为一个愚蠢的例子,给定3x3x100矩阵,我可能想要映射所有100个3x3x_切片。我可能会说,推导出每个3x3切片的行列式,最终得到1x1x100的决定因子阵列。
答案 0 :(得分:2)
看看mapslices
。对于问题建议使用size(A)==(3,3,100)
的示例。计算3个3x3矩阵的100个决定因素可以通过以下方式完成:mapslices(det,A,(1,2))
。
请注意,生成的矩阵仍然是3维的,squeeze
可用于去掉1号尺寸。在示例中:
squeeze(mapslices(det,A,(1,2)),(1,2))