Java 将整数列表中的每一行转换为整数数组?
我是Java新手,如果有任何不清楚的地方,我想道歉-我想把一个四位整数的列表转换成一个整数数组的列表-也就是说,如果我有一个4567的整数,我想把它转换成一个四个独立整数的数组[4,5,6,7]。因此,我想将列表的每一行/索引转换为它自己的数组(而不是将整个列表转换为数组)。我现在正在读一个文件,它有四位整数(每一位都在一个新行上),并将它们添加到一个列表中,然后列表将返回该列表-我如何编写它,使它返回一个整数数组列表Java 将整数列表中的每一行转换为整数数组?,java,arrays,arraylist,integer,Java,Arrays,Arraylist,Integer,我是Java新手,如果有任何不清楚的地方,我想道歉-我想把一个四位整数的列表转换成一个整数数组的列表-也就是说,如果我有一个4567的整数,我想把它转换成一个四个独立整数的数组[4,5,6,7]。因此,我想将列表的每一行/索引转换为它自己的数组(而不是将整个列表转换为数组)。我现在正在读一个文件,它有四位整数(每一位都在一个新行上),并将它们添加到一个列表中,然后列表将返回该列表-我如何编写它,使它返回一个整数数组列表 public List <Integer> loadGu
public List <Integer> loadGuesses (String fileName){
List<Integer> loadGuessList = new ArrayList<>();
try (BufferedReader reader = new BufferedReader(new FileReader(fileName))) {
String line;
while ((line = reader.readLine()) != null) {
loadGuessList.add(Integer.parseInt(line));
}
} catch (FileNotFoundException f){
System.out.println("File not found - please re-enter with correct file name.");
getPlayerFile();
} catch (IOException e){
System.out.println("Incorrect file name - Please re-enter with correct file name.");
getPlayerFile();
}
return loadGuessList;
}
公共列表加载猜测(字符串文件名){
List loadGuessList=新建ArrayList();
try(BufferedReader=new BufferedReader(new FileReader(fileName))){
弦线;
而((line=reader.readLine())!=null){
loadGuessList.add(Integer.parseInt(行));
}
}捕获(FileNotFoundException f){
System.out.println(“未找到文件-请使用正确的文件名重新输入”);
getPlayerFile();
}捕获(IOE异常){
System.out.println(“文件名不正确-请使用正确的文件名重新输入”);
getPlayerFile();
}
返回加载列表;
}
将加载猜测列表的类型更改为列表
读取字符串后,可以遍历字符并将每个字符转换为int
List<int[]> loadGuessList = new ArrayList<>();
while ((line = reader.readLine()) != null) {
int [] digits = new int[4];
for (int i = 0; i < line.length(); i++) { //Assuming line.length() will be 4
digits[i] = line.charAt(i) - '0';
}
loadGuessList.add(digits);
}
List loadGuessList=new ArrayList();
而((line=reader.readLine())!=null){
int[]位=新的int[4];
对于(int i=0;i
参考:
将加载猜测列表的类型更改为列表
读取字符串后,可以遍历字符并将每个字符转换为int
List<int[]> loadGuessList = new ArrayList<>();
while ((line = reader.readLine()) != null) {
int [] digits = new int[4];
for (int i = 0; i < line.length(); i++) { //Assuming line.length() will be 4
digits[i] = line.charAt(i) - '0';
}
loadGuessList.add(digits);
}
List loadGuessList=new ArrayList();
而((line=reader.readLine())!=null){
int[]位=新的int[4];
对于(int i=0;i
参考:
要将带有数字的字符串转换为带有文本数字的整数数组,请使用以下方法:
public static int[] toDigits(String text) {
int[] digits = new int[text.length()];
for (int i = 0; i < text.length(); i++)
digits[i] = Character.digit(text.charAt(i), 10);
return digits;
}
输出
要将带有数字的字符串转换为带有文本数字的整数数组,请使用以下方法:
public static int[] toDigits(String text) {
int[] digits = new int[text.length()];
for (int i = 0; i < text.length(); i++)
digits[i] = Character.digit(text.charAt(i), 10);
return digits;
}
输出
您可以尝试以下方法:
public static void main(String[] args) throws Exception {
List<Integer> list = new ArrayList<Integer>();
BufferedReader reader = new BufferedReader(new FileReader("data.txt"));
String line = null;
while((line = reader.readLine()) != null ) {
char[] tmp = line.toCharArray();
for(int i=0; i<tmp.length; i++) {
list.add(Character. getNumericValue(tmp[i]));
}
}
// TODO release resources
}
publicstaticvoidmain(字符串[]args)引发异常{
列表=新的ArrayList();
BufferedReader=新的BufferedReader(新文件读取器(“data.txt”);
字符串行=null;
而((line=reader.readLine())!=null){
char[]tmp=line.toCharArray();
对于(int i=0;i您可以尝试以下方法:
public static void main(String[] args) throws Exception {
List<Integer> list = new ArrayList<Integer>();
BufferedReader reader = new BufferedReader(new FileReader("data.txt"));
String line = null;
while((line = reader.readLine()) != null ) {
char[] tmp = line.toCharArray();
for(int i=0; i<tmp.length; i++) {
list.add(Character. getNumericValue(tmp[i]));
}
}
// TODO release resources
}
publicstaticvoidmain(字符串[]args)引发异常{
列表=新的ArrayList();
BufferedReader=新的BufferedReader(新文件读取器(“data.txt”);
字符串行=null;
而((line=reader.readLine())!=null){
char[]tmp=line.toCharArray();
for(int i=0;iList类已经提供了一个方便的方法()将自身转换为数组。您可以使用下面的代码段作为问题的参考
public Integer[] loadGuesses(String fileName) {
List loadGuessList = new ArrayList();
/**
* all of your code.
*/
return loadGuessList.toArray(new Integer[loadGuessList.size()]);
}
公共整数[]加载猜测(字符串文件名){
List loadGuessList=新建ArrayList();
/**
*你所有的代码。
*/
返回loadGuessList.toArray(新整数[loadGuessList.size()]);
}
List类已经提供了一个方便的方法()将自身转换为数组。您可以使用下面的代码段作为问题的参考
public Integer[] loadGuesses(String fileName) {
List loadGuessList = new ArrayList();
/**
* all of your code.
*/
return loadGuessList.toArray(new Integer[loadGuessList.size()]);
}
公共整数[]加载猜测(字符串文件名){
List loadGuessList=新建ArrayList();
/**
*你所有的代码。
*/
返回loadGuessList.toArray(新整数[loadGuessList.size()]);
}
您可以只使用字符串的方法
类:
loadGuessList.add(line.toCharArray())
现在,loadGuessList
是一个列表
您可以使用字符串
类的方法:
loadGuessList.add(line.toCharArray())
现在,loadGuessList
是一个列表
我强烈推荐谷歌生产的番石榴,如果你需要,它可以用来处理字符串或集合。
也许它不适合这个主题,但在以后的项目中你会从中受益。我强烈推荐谷歌生产的番石榴,如果你需要的话,它可以用来处理字符串或集合。
也许它不适合这个主题,但在以后的项目中,您将从中受益