有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java将一维数组转换为二维数组,无重复项

我正在尝试将一维数组转换为二维数组([5][5]),而不使用重复字符。我似乎无法让它保持一致,有时有效,有时无效

输入:billys

输出:[[b,i,l,y,],[,,,],[,,,,,],[,,,,,],[,,,,,,],[,,,,,,,,]]

显然缺少“s”,但已正确删除其中一个“l”

输入:billysb

输出:[[b,i,l,y,s],,,,,,[,,,,,,],[,,,,,],[,,,,,,,[,,,,,,,,,,]

再次正确删除重复的字母

输入:billysabc

输出:线程“main”java中的异常。lang.ArrayIndexOutofBounds异常:9

输入:bbbbbbb

输出:[[b,b,b,,],[,,,,],[,,,,,,,,,[,,,,,,],[,,,,,,,,]

删除部分但不是全部重复项

下面是为我进行转换的代码:

char[][] playFairGrid = new char[5][5]; //write keyword to array char[] keywordBreakdown = keyword.toCharArray(); //write keyword to grid for(int i =0; i<5;i++){ for(int j=0;j<5;j++){ if (count==keywordBreakdown.length-1) break; //check for duplicates for(int m =0; m<5;m++){ for(int l=0;l<5;l++){ if (keywordBreakdown[count]==playFairGrid[m][l]){ count++; } } } playFairGrid[i][j]=keywordBreakdown[count]; count++; } } System.out.println(Arrays.deepToString(playFairGrid));

非常感谢大家的帮助!这已经是几个小时以来的痛苦了


共 (1) 个答案

  1. # 1 楼答案

    如果要创建没有重复项的集合,应使用Set Collection