我有一个字符数组,我需要根据一个int在控制台中打印其第一个字符,因此,如果int等于3,则应打印args [0],args [1],args [2 ]。如果int是7它应该打印头七ARGS。
Scanner scanner = new Scanner(System. in);
char[] arguments = scanner.nextLine().toCharArray();
scanner.close();
int i1 = 0;
while (i1 <= arguments.length) {
System.out.println("???");
i1 = i1++;
}
int可以是每个数字,所以我不能只做一个switch语句,因为它太长了。并且元素必须在同一行。输入应类似于“ ABCDEF” /“ ABC”。
答案 0 :(得分:1)
public static void main(String[] args) {
Scanner scanner = new Scanner(System. in);
// array of characters given by user
char[] arguments = scanner.nextLine().toCharArray();
// the value of int given by user i.e how many characters need to print
int intNumber = scanner.nextInt();
// closing the connection for scanner
scanner.close();
//for loop that execute till the given value of int
for(int i=0; i<intNumber; i++) {
//condition check to avoid ArrayIndexOutOfBoundsException
if(i < arguments.length)
// For printing characters in single line
System.out.print(arguments[i]);
}
答案 1 :(得分:0)
{{1}}
答案 2 :(得分:0)
IntStream.range(0, num).forEach(x -> System.out.print(charArray[x]));
如果您更喜欢Java8,此代码段将帮助您解决该问题。
答案 3 :(得分:0)
如果您不希望使用Streams,为什么不这样做:
String s = scanner.nextLine();
int end = Math.min(n,s.length());
System.out.println( s.substring(0,end) );
其中n是字符数?