Heim > Backend-Entwicklung > PHP-Problem > Wie konvertiere ich Java-Code in PHP-Code?

Wie konvertiere ich Java-Code in PHP-Code?

coldplay.xixi
Freigeben: 2023-03-02 12:10:01
Original
4283 Leute haben es durchsucht

So konvertieren Sie Java-Code in PHP-Code: 1. Kombinieren Sie eine Liste vom Array-Typ oder Objekttyp mit einem Array und geben Sie die Liste zurück. 2. Verwenden Sie die zweidimensionale Array-Parametermethode, um die kombinierten beiden zurückzugeben -dimensionaler Array-Typ und Rekursion werden verwendet. 3. Kombinieren Sie einen Array-Typ oder zweidimensionalen Array-Typ mit einem Array und geben Sie ein zweidimensionales Array zurück.

Wie konvertiere ich Java-Code in PHP-Code?

So konvertieren Sie Java-Code in PHP-Code:

Methode 1:

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class ArrayAssemble {
@SuppressWarnings("unchecked")
public static void main(String[] args) {
String[] arrOfInt = { "红", "橙", "黄","黑" };
@SuppressWarnings("unused")
String[] arrOfChar1 = { "L", "XL" };
@SuppressWarnings("unused")
String[] arrOfChar2 = { "麻", "晴纶","看" };
String[] arrOfChar3 = { "奎", "康" };
String[] arrOfStr = { "lmy", "lyb", "mz", "yx" };
System.out.println("以下是组合后的数组");
//Object[][] objectsArrays = assembleArraysToPlanerArray(new Object[][] {arrOfInt, arrOfChar1, arrOfChar2, arrOfChar3,arrOfStr });
Object[][] objectsArrays = assembleArraysToPlanerArray(new Object[][] { arrOfChar1,arrOfChar2, arrOfChar3 });
//Object[][] objectsArrays = assembleArraysToPlanerArray(new Object[][] { arrOfChar1,arrOfChar2 });
int i = 0;
for (Object[] objArrays : objectsArrays) {
i++;
System.out.println(i + "=" + Arrays.toString(objArrays));
}
}
Nach dem Login kopieren

Hilfsmethode für Methode eins: Kombinieren Sie eine Liste vom Array-Typ oder Objekttyp mit einem Array und geben Sie eine Liste zurück

@SuppressWarnings("unchecked")
public static List assembleArrayToList(List aList, Object[] array) {
List arrList = new ArrayList();
// 遍历aList,将array与aList进行组合
for (int i = 0; i < aList.size(); i++) {
Object obj = aList.get(i);
// 检查aList的元素是否是数组类型的,如果不是,则直接产生组合列表
if (obj instanceof Object[]) {
Object[] listArr = (Object[]) obj;
// 对数组类型的aList元素与array进行组合
for (int k = 0; k < array.length; k++) {
Object[] newListArr = new Object[listArr.length + 1];
for (int j = 0; j < listArr.length; j++) {
newListArr[j] = listArr[j];
}
newListArr[listArr.length] = array[k];
arrList.add(newListArr);
}
} else {
// 对非数组类型的aList元素与array进行组合
for (int j = 0; j < array.length; j++) {
Object[] arrObj = { aList.get(i), array[j] };
arrList.add(arrObj);
}
}
}
return arrList;
}
Nach dem Login kopieren

Methode zwei: zweidimensional verwenden Array-Parameter Die Methode gibt den kombinierten zweidimensionalen Array-Typ zurück und verwendet Rekursion

@SuppressWarnings("unchecked")
public static Object[][] assembleArraysToPlanerArray(Object[][] objectArrays) {
if (objectArrays.length == 2) {
Object[] assembledArray = objectArrays[0];
Object[] array = objectArrays[1];
return assembleArrayToArray(assembledArray, array);
} else if (objectArrays.length <= 1) {
return objectArrays;
} else {
Object[] objArray = objectArrays[objectArrays.length - 1];
objectArrays = Arrays.copyOf(objectArrays, objectArrays.length - 1);
return assembleArrayToArray(assembleArraysToPlanerArray(objectArrays), objArray);
}
}
Nach dem Login kopieren

Hilfsmethode für Methode zwei: Kombinieren Sie einen Array-Typ oder einen zweidimensionalen Array-Typ mit einem Array. und ein zweidimensionales Array zurückgeben

public static Object[][] assembleArrayToArray(Object[] assembledArray,Object[] array) {
int lenAssArray = assembledArray.length;
int lenArray = array.length;
Object[][] objArrays = new Object[lenAssArray * lenArray][];
for (int i = 0; i < lenAssArray; i++) {
Object obj = assembledArray[i];
if (obj instanceof Object[]) {
Object[] objArr = (Object[]) obj;
int lenObjArr = objArr.length;
for (int k = 0; k < lenArray; k++) {
// 复制objArr数组到newListArr数组,并将其长度加一
Object[] newListArr = Arrays.copyOf(objArr, lenObjArr + 1);
// 将array数组的第k+1元素赋值给newListArr数组最后的元素,并将newListArr赋值给objArrays数组的第k+1个元素
newListArr[lenObjArr] = array[k];
objArrays[lenArray * i + k] = newListArr;
}
} else {
for (int j = 0; j < lenArray; j++) {
Object[] newObjArray = { obj, array[j] };
objArrays[lenArray * i + j] = newObjArray;
}
}
}
return objArrays;
}
}
Nach dem Login kopieren

Verwandte Lernempfehlungen: PHP-Programmierung vom Einstieg bis zur Kompetenz

Das obige ist der detaillierte Inhalt vonWie konvertiere ich Java-Code in PHP-Code?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage