我目前正在学习流,并使用.average函数来计算使用扫描仪输入的某些整数的平均值.我遇到的问题是如何格式化输出,以便它不会说可选的double.
import java.util.Scanner;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
public class ClassAverage {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
List<Integer> grades = new ArrayList<Integer>();
while (scan.hasNextInt()) {
grades.add(scan.nextInt());
if (scan.equals("end")) {
{
break;
}
}
grades.forEach(System.out::println);
}
System.out.println("" + grades.stream()
.mapToInt(Integer::intValue)
.average());
}
}
Run Code Online (Sandbox Code Playgroud)
这是我得到的输出
OptionalDouble[88.0]
Run Code Online (Sandbox Code Playgroud) 我是一个相当新的Java程序员,我目前正在学习如何将列表转换为数组.我遇到的问题是,当我尝试链接列表时,我得到的输出与数组中的输出不同.链表输出都是空值,而数组具有应有的随机值.这是我的代码:
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
public class InsertingElements {
public static void main(String[] args) {
Integer[] numbers = new Integer[25];
List<Integer> linkList = new LinkedList<>(Arrays.asList(numbers));
for (int i = 0; i < numbers.length; i++) {
numbers[i] = (int) (Math.random() * 100 + 1);
}
System.out.println("Numbers Generated: " + Arrays.toString(numbers));
numbers = linkList.toArray(new Integer[linkList.size()]);
System.out.println("Numbers: ");
for (Integer number : numbers) {
System.out.println(number);
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是输出:
Numbers Generated: [92, 61, 25, 8, 48, 80, 85, 89, 53, 18, …
Run Code Online (Sandbox Code Playgroud)