java - 为什么这种方法不能为我工作,创建一维数组?
问题描述
我是 java 的初学者,我想使用 Scanner 类来创建一个方法,我可以在另一种方法中使用它:
package my_train_1;
import java.util.Scanner;
public class Use_methods {
public static void main(String[] args) {
System.out.println("voila les nouvelles chaines de caractéres que vous vennez de saisir");
saisir(sclavier);
}
public static void saisir(String sclavier[]) {
int p=0;
while(p<5) {
System.out.print("saisir une chaine de caracter");
Scanner reader=new Scanner(System.in);
sclavier[p]=reader.nextLine();
p++;
}
}
}
那么,我能做些什么来正确编译它?
解决方案
当您调用时saisir(sclavier);
,sclavier
什么都不是,您必须为该方法提供一个新数组saisir(new String[5]);
如果您需要在之后使用它,请将其保存在变量中:
String[] res = new String[5];
saisir(res);
System.out.println(Arrays.toString(res));
另外,Scanner
每次只用一个,不用一个新的,不需要
public static void saisir(String sclavier[]) {
int p = 0;
Scanner reader = new Scanner(System.in);
while (p < 5) {
System.out.print("saisir une chaine de caracter");
sclavier[p] = reader.nextLine();
p++;
}
}
推荐阅读
- scala - 如何添加月份到日期,其中要添加的月份数将来自列名
- django - 忽略来自管理员内联的 POST 值
- riscv - 减少while循环中的指令
- python - 使用 pandas.melt 重塑数据框
- python - 查找列表中最接近的值
- xamarin - 如何使用 Font Awesome 5 Duotone Xamarin Forms
- java - Spring Data JPA 方法 - 查找父级和有条件的子级
- sql - 错误:“(”或附近的语法错误。问题:无法创建表
- python-3.x - 是否可以在 Matillion 中编写“正确的”Python 代码?
- websphere - Websphere 8.5.5 安装:我们需要什么包?