键盘录入多个数据,在控制台输出这多个数据中的最大值


demo:

键盘录入多个数据,以0结束,要求在控制台输出这多个数据中的最大值

分析:

A:创建键盘录入数据对象

B:键盘录入多个数据,我们不知道多少个,所以用集合存储

C:以0结束,这个简单,只要键盘录入的数据是0,我就不继续录入数据了

D:把集合转成数组

E:对数组排序

F:获取该数组中的最大索引的值


public class ArrayListDemo {

public static void main(String[] args) {

// 创建键盘录入数据对象

Scanner sc = new Scanner(System.in);

// 键盘录入多个数据,我们不知道多少个,所以用集合存储

ArrayList<Integer> array = new ArrayList<Integer>();

// 以0结束,这个简单,只要键盘录入的数据是0,我就不继续录入数据了

while (true) {

System.out.println("请输入数据:");

int number = sc.nextInt();

if (number != 0) {

array.add(number);

} else {

break;

}

}

// 把集合转成数组

// public <T> T[] toArray(T[] a)

Integer[] i = new Integer[array.size()];

// Integer[] ii = array.toArray(i);

array.toArray(i);

// System.out.println(i);

// System.out.println(ii);

// 对数组排序

// public static void sort(Object[] a)

Arrays.sort(i);

// 获取该数组中的最大索引的值

System.out.println("数组是:" + arrayToString(i) + "最大值是:"

+ i[i.length - 1]);

}

public static String arrayToString(Integer[] i) {

StringBuilder sb = new StringBuilder();

sb.append("[");

for (int x = 0; x < i.length; x++) {

if (x == i.length - 1) {

sb.append(i[x]);

} else {

sb.append(i[x]).append(", ");

}

}

sb.append("]");

return sb.toString();

}

}

时间: 2024-08-01 10:23:53

键盘录入多个数据,在控制台输出这多个数据中的最大值的相关文章

键盘录入多个数据,以0结束,要求在控制台输出这多个数据中的最大值

package cn; import java.util.ArrayList; import java.util.Arrays; import java.util.Scanner; /**  * 键盘录入多个数据,以0结束,要求在控制台输出这多个数据中的最大值  * 分析:  *  1.创建键盘录入对象  *  2.键盘录入多个数据,我们不知道有多少个,所以用集合存储  *  3.以0结束,只要键盘录入的数据是0,就退出循环  *      4.把集合转换成数组  *      5.对数组进行排

Java基础知识强化之集合框架笔记36:List练习之键盘录入多个数据在控制台输出最大值

1. 键盘录入多个数据,以0结束,要求在控制台输出这多个数据中的最大值 分析: •  创建键盘录入数据对象 •  键盘录入多个数据,我们不知道多少个,所以用集合存储 •  以0结束,这个简单,只要键盘录入的数据是0,我就不继续录入数据了 •  把集合转成数组 •  对数组排序 •  获取该数组中的最大索引的值 2. 代码实现: 1 1. package cn.itcast_03; 2 3 import java.util.ArrayList; 4 import java.util.Arrays;

控制台输入多个数字,输出次数最多的数中的最大值

需求如标题,挺简单的,大概也就是几个循环的事吧. 但是实现起来并没有一蹴而就,应该是功力还不够.最后用较简洁的方式完成,代码如下: import java.util.*; public class Test{ public double[] getArr(){ System.out.println("请输入一组数字,使用\",\"隔开,按回车结束"); Scanner in = new Scanner(System.in); String str = in.next

在控制台输出所有的“水仙华数”

/*分析: * 所谓的水仙花是指一个三位数,其各位数字的立方和等于该数本身 * 举例:153就是一个水仙花数. * 153 = 1*1*1 + 5*5*5 + 3*3*3 = 1 + 125 +27 =153 * * A:三位数其实是告诉了我们范围 * B:通过for循环我们就可以实现获取每一个三位数 * 但是麻烦是如何获取这个三位数的个,十,百位上的数据 * * 我们如何获取一个数据的个,十,百呢? * 假设有个一个数据:153 * ge: 153%10 = 3 * shi: 153/10%1

Java基础知识强化之集合框架笔记49:键盘录入5个学生信息(姓名,语文成绩,数学成绩,英语成绩),按照总分从高到低输出到控制台

1. 键盘录入5个学生信息(姓名,语文成绩,数学成绩,英语成绩),按照总分从高到低输出到控制台: 分析: A: 定义学生类    B: 创建一个TreeSet集合       C: 总分从高到底如何实现呢?        D: 键盘录入5个学生信息       E: 遍历TreeSet集合 2. 代码示例: (1)Student.java: 1 package cn.itcast_08; 2 3 public class Student { 4 // 姓名 5 private String na

方法之根据键盘录入的行数和列数,在控制台输出星形

根据键盘录入的行数和列数,在控制台输出星形: import java.util.Scanner; class Hello2 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入一个行数"); int x = sc.nextInt(); System.out.println("请输入一个列数"); int y = s

键盘录入5个学生的信息根据总分从高到低输出在控制台

第一部分: public class Student { private String name; private Integer chinese; private Integer math; private Integer english; public Student(){ super(); } public Student(String name,Integer chinese,Integer math,Integer english){ super(); this.name = name

Java基础知识强化之网络编程笔记04:UDP之发送端的数据来自于键盘录入案例

1. 数据来自于键盘录入 键盘录入数据要自己控制录入结束. 2. 代码实现: (1)发送端: 1 package com.himi.updDemo1; 2 3 import java.io.IOException; 4 import java.net.DatagramPacket; 5 import java.net.DatagramSocket; 6 import java.net.InetAddress; 7 import java.util.Scanner; 8 9 /** 10 * 11

键盘录入数字,输出汉字数字,如键盘录入123,输出一二三。

import java.util.Scanner; public class Test3 { /** *  从键盘接受一个数字,列出该数字的中文表示格式,例如:键盘输入123,打印出一二三: * 键盘输入3103,打印出三一零三. * @param args */ public static void main(String[] args) { //键盘录入数据: Scanner sc=new Scanner(System.in); // 引导用户: System.out.println("请输