我想知道我是否可以在arduino代码中使用三维字符串数组。我想将java代码更改为arduino。
public static String [] [] [] turn(String rot,String anaptigma [] [] []){
String a, b, c;
if (rot=="rt") { //right
a=anaptigma[0][0][2];
b=anaptigma[0][1][2];
c=anaptigma[0][2][2];
anaptigma[0][0][2]=anaptigma[2][0][2];
anaptigma[0][1][2]=anaptigma[2][1][2];
anaptigma[0][2][2]=anaptigma[2][2][2];
anaptigma[2][0][2]=anaptigma[4][0][2];
anaptigma[2][1][2]=anaptigma[4][1][2];
anaptigma[2][2][2]=anaptigma[4][2][2];
anaptigma[4][0][2]=anaptigma[5][0][2];
anaptigma[4][1][2]=anaptigma[5][1][2];
anaptigma[4][2][2]=anaptigma[5][2][2];
anaptigma[5][0][2]=a;
anaptigma[5][1][2]=b;
anaptigma[5][2][2]=c;
a=anaptigma[3][0][0];
b=anaptigma[3][0][1];
c=anaptigma[3][0][2];
anaptigma[3][0][0]=anaptigma[3][2][0];
anaptigma[3][0][1]=anaptigma[3][1][0];
anaptigma[3][0][2]=a;
anaptigma[3][2][0]=anaptigma[3][2][2];
anaptigma[3][1][0]=anaptigma[3][2][1];
anaptigma[3][2][1]=anaptigma[3][1][2];
anaptigma[3][1][2]=b;
这是一个小样本
答案 0 :(得分:0)
你可以简单地传递数组,如下例所示。
void setupArray(String arr[][3][4])
{
arr[0][0][0] = "Hello";
arr[1][2][3] = "World";
}
void setup()
{
Serial.begin(9600);
String myArray[2][3][4];
setupArray(myArray);
Serial.println(myArray[0][0][0] + " " + myArray[1][2][3]);
}
无论如何,您可能需要处理内存使用情况,因为通常Java在受限制较少的环境中运行(与通常具有几千字节内存的典型Arduino板相比)