gpt4 book ai didi

Java 根据特定列更改数组元素顺序

转载 作者:行者123 更新时间:2023-12-02 08:41:13 25 4
gpt4 key购买 nike

我从文件中提取了以下数组:

[ Car , House , Bike , Index0, Motor, Ski , Index1 , Hello ]

我正在尝试以强制特定元素(index0 -> 0 和index1 -> 1)到特定位置的方式重新排序该数组,如下所示:

[ Index0 , Index1, Bike , Car, Motor, Ski , House, Hello ]

到目前为止,我能够提取信息,读取数组并获取正确的索引,但似乎知道如何继续替换元素:

    static void loadHeaderSettingName() throws IOException {
System.out.println("Loading the header settings name [Value][ColIndex]");
FileInputStream excelFile = new FileInputStream(new File(excelFilePath));
Workbook workbook = new XSSFWorkbook(excelFile);
Sheet sheet = workbook.getSheetAt(0);
Row row = sheet.getRow(0);

for (Cell cell : row) {
headerArray.add(cell.getStringCellValue().trim());
}

String index0="Index0";
String index1="Index1";

System.out.println(headerArray.toString());

for (int i=0; i <headerArray.size(); i++ ) {
System.out.println(headerArray.get(i) + " " + i);

if (headerArray.get(i).equals(index0)) {
System.out.println("hi");
}
}
}

最佳答案

您可能正在循环中寻找类似的东西。但这不是一个通用的解决方案。就像在这种方法中一样,如果您想交换除 0 和 1 之外的其他索引,那么您必须添加另一个 if 条件

    for( int i = 0; i < headerArray.size(); i++ )
{
String temp;
if( headerArray.get( i ).equalsIgnoreCase( index0 ) )
{
temp = headerArray.get( i );
headerArray.set( i, headerArray.get( 0 ) );
headerArray.set( 0, temp );
}
else if( myArr[i].equalsIgnoreCase( index1 ) )
{
temp = headerArray.get( i );
headerArray.set( i, headerArray.get( 1 ) );
headerArray.set( 1, temp );
}
}
System.out.println ( headerArray );

关于Java 根据特定列更改数组元素顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61383374/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com