Java 之 实验十 -- 数组
实验十
数组
练习一
计算并实现一个应用程序,读取0-49范围内的任意多个整数,并且计算每项输入数据出现的次数。当输入完成后,打印所有的输入值及其出现的次数。(提示:使用命令行参数)
JiShu.java
package J10;
import java.util.Iterator;
import java.util.Scanner;
import java.util.Set;
import java.util.TreeMap;
public class JiShu {
public static void main(String[] args) {
MyNumber number = new MyNumber();
Scanner scanner = new Scanner(System.in);
int temp = 0;
while (true) {
System.out.println("请输入0-50(包括)之间的数:");
temp = scanner.nextInt();
if (temp >= 0 && temp <= 50) {
if (!MyNumber.map.containsKey(temp)) {
MyNumber.map.put(temp, 1);
} else {
int sum = MyNumber.map.get(temp);
MyNumber.map.put(temp, ++sum);
}
} else {
break;
}
}
number.show();
}
}
class MyNumber{
static TreeMap<Integer, Integer> map = new TreeMap<Integer, Integer>();
private StringBuilder sb = new StringBuilder();
public void show(){
Set<Integer> set = map.keySet();
Iterator<Integer> it = set.iterator();
while(it.hasNext()){
Integer keyTemp = it.next();
sb.append("整数"+keyTemp+"--");
sb.append("输入"+map.get(keyTemp)+"次"+" ");
}
System.out.println(sb.toString());
}
}
练习二
使用重载的方式,同名方法不同参数进行操作,对两个数、三个数、数组等不同的参数类型进行排序。
运行效果参考如下:
两个数的排序结果:30 12
三个数的排序结果:40 30 12
数组的排序结果: 8 12 16 16 23 34 44 52 67 98
PaiXu.java
package J10;
import java.util.Arrays;
import java.util.Scanner;
public class PaiXu {
public static void main(String[] args) {
paixuya Paixuya = new paixuya();
System.out.println("输入几个数字");
Scanner scanner = new Scanner(System.in);
int no = scanner.nextInt();
System.out.println("请输入" + no + "个数字");
int[] list = new int[no];
if (no == 2){
Paixuya.paipai(scanner.nextInt(),scanner.nextInt());
}else {
for (int i = 0; i < list.length; i++) {
list[i] = scanner.nextInt();
}
Paixuya.paipai(list);
}
}
}
class paixuya{
public void paipai(int a ,int b){
if (a > b) {
System.out.println("两个数的排序结果:" + a + " " + b);
} else {
System.out.println("两个数的排序结果:" + b + " " + a);
}
}
public void paipai(int... list){
if (list.length==3) {
Arrays.sort(list);
System.out.print("三个数排序: ");
for (int i = 0; i < list.length; i++) {
System.out.print(list[i] + " ");
}
}
else{
Arrays.sort(list);
System.out.print("数组的排序结果: ");
for (int i = 0; i < list.length; i++) {
System.out.print(list[i] + " ");
}
}
}
}
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现