简体   繁体   中英

Java Scanner() to read from Array

I know you can set the input for a scanner in Java. Is it possible to feed an array to the scanner?

There is nothing built in, but you could certainly join all of the elements in your array and pass the resulting string into the Scanner constructor .

A solution with better performance but a greater time investment is to implement Readable by wrapping your array, and keeping track of the current element in the array and the current position in that element's string representation. You can then fill the buffer with data from the backing array as the Scanner reads from your Readable object. This approach lets you lazily stream data from your array into the Scanner, but at the cost of requiring you to write some code.

Use the Arrays.toString() method on the array. For example:

int[] arrayOfInts = {1, 2, 3};
Scanner s = new Scanner(Arrays.toString(arrayOfInts));

while (s.hasNext()) {
    System.out.println(s.next());
}

Will print out:

[1,
2,
3]
public class Totalsum {

  public static void main(String[] args){

  int[] y={6,1,5,9,5};
  int[] z={2,13,6,15,2};

  int Total= sumLargeNumber(y,z,5);

  System.out.println("The Total sum is "+Total); //call method
}

public static int sumLargeNumber(int a[], int b[], int size) {
  int total=0;

  for(int i=0; i< size; i++) {
    if(a[i] > b[i]){
      total=total+a[i];
    }

    else {
      total=total+b[i];
    }
  }
  return total;
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM