java基础09 数组的使用
2017-12-31 19:18
267 查看
1.打擂法求最大值和最小值:
package cn.kgc.shuzushiyong;
/**
* 冒泡排序 升序的排列
* @author Vip宅男
*
*/
public class DoubleArray04 {
public void test01(){
int [] nums={1,5,8,2,3,5};
/**
* 外层循环控制轮数 数组的长度-1
* 外层循环每执行一次, 内层循环执行一遍
*/
for (int i = 0; i < nums.length-1; i++) {
System.out.println("这是第"+(i+1)+"轮================");
/**
* 内层循环 数组的长度-1-i;
*/
for (int j = 0; j < nums.length-1-i; j++) {
System.out.println("比较了第"+(j+1)+"次");
}
}
}
/**
* 冒泡排序 升序的排列
* @param args
*/
public void test02(){
int [] nums={10,5,8,2,3,50,5000,500,30,65,98};
/**
* 外层循环控制轮数 数组的长度-1
* 外层循环每执行一次, 内层循环执行一遍
*
* 无论多少个数字相比
* 都是相邻的两个数字进行比较,
* 数值小的元素会交换前面的位置
* 代码:
* 外层循环 : 数组长度-1
* 内层循环: 数组长度-1-i
*
*/
for (int i = 0; i < nums.length-1; i++) {
//内层循环 数组的长度-1-i
for (int j = 0; j < nums.length-1-i; j++) {
if (nums[j]>nums[j+1]) {//相当于 第一个元素大于下一个元素 那么需要和下个元素换位置
//等量转换
int temp=nums[j];
nums[j]=nums[j+1];
nums[j+1]=temp;
}
}
}
/**
* 遍历数组中的元素
*/
for (int i : nums) {
System.out.println(i);
}
}
public static void main(String[] args) {
DoubleArray04 doubleArray04=new DoubleArray04();
doubleArray04.test01();
System.out.println("=============================");
doubleArray04.test02();
}
}
8.Arrays工具类的使用:
package cn.kgc.shuzushiyong;
import java.util.Arrays;
/**
*
* @author Vip宅男
*
*/
public class TestArrays {
/**
* Arrays.equals(数组1,数组2)
* 01.首先比较的而是数组的长度是否一致
* 02.比较数组中的元素
*/
public void test01(){
int nums1[]={10,20,30};
int nums2[]={10,20,30};
int nums3[]={10,30,20};
System.out.println(nums1==nums2); //比较内存地址 false
//equals
System.out.println(nums1.equals(nums2)); //底层还是比较内存地址 false
System.out.println(Arrays.equals(nums1, nums2));
//true
System.out.println(Arrays.equals(nums1, nums3)); //false
}
/**
* [L@4a7fca02 :数组toString()的结果
*/
public void test02(){
int nums1[]={10,20,30};
//把数组转换成字符串
System.out.println(Arrays.toString(nums1));
}
public void test03(){
int nums1[]={10,20,30};
//把数组转换成字符串
System.out.println(Arrays.toString(nums1));
//copyOf(数组,长度)
int[] nums2 = Arrays.copyOf(nums1, 10);
System.out.println(Arrays.toString(nums2));
}
public void test04(){
int nums1[]={10,20,30};
System.out.println("nums1之前的值:"+Arrays.toString(nums1));
//fill(数组,值)
Arrays.fill(nums1, 500);
System.out.println("nums1fill之后的值:"+Arrays.toString(nums1));
}
/**
* binarySearch(数组,值)
* 查询值 在数组中下标的位置
*/
public void test05(){
int nums1[]={100,200,10,20,30};
//01.必须先排序 升序
Arrays.sort(nums1);
//02.查询20的下标 [10,20,30,100,200]
System.out.println(Arrays.binarySearch(nums1, 20));
}
public static void main(String[] args) {
TestArrays test=new TestArrays();
test.test01();
System.out.println("************************");
test.test02();
System.out.println("************************");
test.test03();
System.out.println("************************");
test.test04();
System.out.println("************************");
test.test05();
}
}
9.二维数组:
package cn.kgc.shuzushiyong;
/**
*
* @author Vip宅男
*
*/
public class TestArrays02 {
/**
* 二维数组: 数组中的元素 又是一个数组!
*/
public void test01(){
//01.创建二维数组
int[][] nums=new int[3][3]; //int [][] nums2={{1,2,3},{4,5,6},{7,8,9}};
nums[0][0]=5;
nums[0][1]=6;
nums[0][2]=7;
nums[1][0]=5;
nums[1][1]=6;
nums[1][2]=7;
nums[2][0]=5;
nums[2][1]=6;
nums[2][2]=7;
}
public void test02(){
//01.创建二维数组
int [][] nums={{1,2,3,4},{4,5,6},{7,8}};
System.out.println(nums[0]);//{1,2,3}
System.out.println(nums[0][1]);//2
System.out.println("nums的长度:"+nums.length);
System.out.println("第2个数组中下标是2的元素"+nums[1][2]);
}
/**
* 循环打印出数组所有的元素
*/
public void test03(){
//01.创建二维数组
int [][] nums={{1,2,3,4},{4,5,6},{7,8}};
for (int i = 0; i < nums.length; i++) { //外层
System.out.println("这是2维数组中的第"+(i+1)+"个数组");
for (int j = 0; j < nums[i].length; j++) {//内层
System.out.println("元素的值:"+nums[i][j]);
}
}
}
public static void main(String[] args) {
TestArrays02 test=new TestArrays02();
test.test01();
System.out.println("**************************");
test.test02();
System.out.println("**************************");
test.test03();
}
}
10.二维数组小练习:
package cn.kgc.shuzushiyong;
import java.util.Scanner;
/**
*
* @author Vip宅男
*
*/
public class TestArrays03 {
/**
* 已知有3个班级各3名学员,请使用
*二维数组计算各个班级的总成绩
*/
public void test01(){
/**
* 01.创建一个二维数组
*/
int[][] nums=new int[3][4];
Scanner scanner=new Scanner(System.in);
/**
* 定义一个数组变量 存储每个班级的成绩
*/
int sum[]=new int[nums.length];
/**
* 02.让用户循环给数组 赋值
*/
for (int i = 0; i < sum.length; i++) {
System.out.println("输入第"+(i+1)+"个班级的学生成绩");
for (int j = 0; j < sum.length; j++) {
System.out.println("输入第"+(j+1)+"个学生成绩:");
nums[i][j]=scanner.nextInt();//学生成绩赋值
sum[i]=nums[i][j];//每个班级的总成绩
}
}
System.out.println("学生的成绩*************************");
for (int i = 0; i < nums.length; i++) {
for (int j = 0; j < nums.length; j++) {
System.out.println("输入第"+(i+1)+"个班级的第"+(j+1)+"个学生的成绩:"+nums[i][j]);
}
}
System.out.println("班级的成绩*************************");
for (int i = 0; i < sum.length; i++) {
System.out.println("第"+(i+1)+"个班级的总成绩:"+sum[i]);
}
}
public void test02(){
//有3个班各3名学生某门课程的成绩,
//01.定义一个2维数组
int [][] scores=new int[3][3];
Scanner scanner=new Scanner(System.in);
//02.循环给学生赋值
for (int i = 0; i < scores.length; i++) {
System.out.println("输入第"+(i+1)+"班级学生的成绩:===");
for (int j = 0; j < scores.length; j++) {
System.out.println("请输入第"+(j+1)+"个学生的成绩:");
scores[i][j]=scanner.nextInt();
}
}
System.out.println("学生的成绩统计如下******************");
// 如何计算3个班各自的总成绩?
for (int i = 0; i < scores.length; i++) {
//每个班级都清零
int sum=0;
for (int j = 0; j < scores.length; j++) {
sum+=scores[i][j];
}
System.out.println("第"+(i+1)+"班级学生成绩的总和==="+sum);
}
}
public static void main(String[] args) {
TestArrays03 test=new TestArrays03();
test.test01();
System.out.println("****************************");
test.test02();
}
}
package cn.kgc.shuzushiyong; /** * * @author Vip宅男 * */ public class Test { /** * 求数组中的最大值 */ public static void main(String[] args) { /** * 定义一个数组 */ int[] nums={50,20,30,80,100,90}; /** * 定义一个擂主 */ int max=0; /** * 循环打雷 */ for (int i = 0; i < nums.length; i++) { //如果发现 数组中的元素 大于max 就让当前的元素的值给max if (nums[i]>max) { max=nums[i]; System.out.println("历届的擂主:"+max); } } System.out.println("最终的擂主:"+max); System.out.println("*******************************"); /** * 求数组中的最小值 */ int[] nums1={50,20,30,80,100,90}; //定义一个最小值 默认值是 数组中的的第一个元素 int min=nums1[0]; /** * 循环打雷 */ for (int i = 0; i < nums1.length; i++) { if (min>nums1[i]) { //如果发现数组中的元素小于min 就把元素的值给min min=nums1[i]; } } System.out.println("最小值是:"+min); System.out.println("*******************************"); } }
2.数组的基本使用:
package cn.kgc.shuzushiyong; import java.util.Arrays; import java.util.Scanner; /** * * @author Vip宅男 * */ public class Test02 { /** * 数组:一组相同数据类型的集合 在内存中开辟一连串的空间 * 和String一样,都是 引用数据类型 * 数据类型 [] 数组名称 * 数组的下标=数组的长度-1 */ public static void main(String[] args) { /** * 01.声明数组 创建了一个火车厢 */ int[] nums; /** * 02.分配空间 给火车厢创建座位 */ nums=new int[5]; /** * 03.赋值 旅客入座 */ nums[0]=50; /** * 04.使用nums.length(获取数组的长度) */ for (int i = 0; i < nums.length; i++) { System.out.println("数组nums的第"+(i+1)+"个位置的数据是:"+nums[i]); } System.out.println("*********************************************"); /** * 声明数组的同时给数组赋值: * 给你说 创建车厢的同时,告诉你里面有多少个座位 * * int [] sums; * sums={ 1, 2, 3, 4, 5 }; 这种写法是错误的! */ int[] sums={1,2,3,4,5}; /** * 寻找到下标为3的数据 */ System.out.println(sums[3]); System.out.println("*********************************************"); /** * 计算5位同学的平均分 */ double[] scores=new double[5];//创建一个长度为5的double类型的数组,保存学生成绩 //循环给学生成绩赋值 Scanner scanner=new Scanner(System.in); double sum=0;//保存学生总成绩 for (int i = 0; i < scores.length; i++) { System.out.println("请输入第"+(i+1)+"位同学的成绩:"); scores[i]=scanner.nextDouble(); //每个学生的成绩需要加到sum中 sum+=scores[i]; } System.out.println("学生的总成绩:"+sum); System.out.println("学生的平均分:"+(sum/scores.length)); System.out.println("*********************************************"); /** *有一个数列:8,4,2,1,23,344,12 循环输出数列的值 求数列中所有数值的和 猜数游戏:从键盘中任意输入一个数据,判断数列中是否包含此数 */ int sum1=0; int[] nos={8,4,2,1,23,344,12}; for (int i = 0; i < nos.length; i++) { System.out.println(nos[i]); sum1+=nos[i]; } System.out.println(sum1); System.out.println("*********************************************"); System.out.println("请您输入一个数字:"); int no=scanner.nextInt(); boolean flag=false;//定义标记,来记录是否中奖 for (int i = 0; i < nos.length; i++) { if (no==nos[i]) { flag=true; break; } } if (flag) {//判断标记 System.out.println("恭喜您中奖了"); }else { System.out.println("没有找到............."); } System.out.println("*********************************************"); /** * 以表格的形式输出5笔购物金额及总金额 */ double[] pays=new double[5]; System.out.println("请输入本月消费的记录:"); for (int i = 0; i < pays.length; i++) { System.out.println("请输入第"+(i+1)+"次的消费金额:"); pays[i]=scanner.nextDouble();//给数组每个元素赋值 } //没有排序的遍历 for (int i = 0; i < pays.length; i++) { System.out.println(pays[i]); } System.out.println("**********************升入之后**********************"); Arrays.sort(pays);//升入 for (int i = 0; i < pays.length; i++) { System.out.println(pays[i]); } } }
3.操作数组的工具类:
package cn.kgc.shuzushiyong; import java.util.Arrays; /** * 操作数组的工具类! * @author Vip宅男 * */ public class Arrays02 { /** * equals(arr1, arr2) :比较两个数组的内容和长度 是否一致 */ @SuppressWarnings("unused") public void testEquals(){ int[] nums1 = { 10, 20, 30, 50 }; int[] nums2 = nums1; int[] nums3 = { 10, 20, 30 }; System.out.println("nums1与nums2比较:" + Arrays.equals(nums1, nums2)); System.out.println("nums1==nums2比较:" + (nums1 == nums2)); } /** * sort(arr):对数组中的元素进行升序的排列 */ public void testSort(){ int[] nums = { 10, 50, 30, 20 }; Arrays.sort(nums); for (int i = 0; i < nums.length; i++) { System.out.println(nums[i]); } } /** * toString:把一个数组变成字符串 * [10, 50, 30, 20] 集合toString的结果! */ public void testToString(){ int[] nums = { 10, 50, 30, 20 }; System.out.println(Arrays.toString(nums)); } /** * fill(arr,val):将arr数组中的所有元素都赋值成了val */ public void testFill(){ int[] nums = { 10, 50, 30, 20 }; System.out.println(Arrays.toString(nums)); Arrays.fill(nums, 100); System.out.println(Arrays.toString(nums)); } /** * copyOf(arr,length):将数组arr复制成一个长度为length的新数组 */ public void testCopyOf(){ int[] nums = { 10, 50, 30, 20 }; int[] nums1 = Arrays.copyOf(nums, 3); System.out.println(Arrays.toString(nums1)); } /** * binarySearch(arr,val):查询val在arr数组中的下标! * 必须先升序排列! Arrays.sort(arr)!!!! */ public void testBinarySearch(){ int[] nums = { 10, 50, 30, 20 }; Arrays.sort(nums); System.out.println(Arrays.binarySearch(nums, 50)); } /** * 测试类 * @param args */ public static void main(String[] args) { Arrays02 arrays02=new Arrays02(); arrays02.testEquals(); System.out.println("***********************************"); arrays02.testSort(); System.out.println("***********************************"); arrays02.testToString(); System.out.println("***********************************"); arrays02.testFill(); System.out.println("***********************************"); arrays02.testCopyOf(); System.out.println("***********************************"); arrays02.testBinarySearch(); } }
4.打擂法求最值:
package cn.kgc.shuzushiyong; /** * * @author Vip宅男 * */ public class Test02 { /** * 打擂法 求数组中的最大值 */ public static void main(String[] args) { int[] nums = { 10, 50, 30, 200 }; /** * 默认的擂主 */ int max=nums[0]; // 让max依次和nums中的每一个元素进行比较 for (int i = 0; i < nums.length; i++) { if (max<nums[i]) { max=nums[i]; } } System.out.println("最大值:"+max); Sys 110f6 tem.out.println("********************************"); /** * 求数组中的最小值 */ //定义一个数组 参赛的选手 int [] nums1={50,200,30,80,100,90}; //定义一个最小值 默认是 数组中的第一个元素 int min=nums1[0]; for (int i = 0; i < nums1.length; i++) { if (min>nums1[i]) { //如果发现数组中的元素小于min 把元素的值给min min=nums1[i]; System.out.println("最小值:"+min); } } } }
5.字符的逆序输出:
package cn.kgc.shuzushiyong; import java.util.Arrays; /** * * @author Vip宅男 * */ public class CharSort03 { /** * 字符的逆序输出 */ public static void main(String[] args) { char[] chars = { 'a', 'f', 'c', 'g', 'z', 'y' }; /** * 升序 */ Arrays.sort(chars); System.out.println("升入后的字符===》"+Arrays.toString(chars)); /** * 逆序 */ System.out.println("逆序之后的字符===》"); for (int i = chars.length-1; i>=0; i--) { System.out.println(chars[i]); } System.out.println("**********************************"); /** * char类型的默认值: '\u0000' */ char[] chars1= { 'a', 'c', 'f', 'g', 'y', 'z', '\u0000' }; // 必须有顺序 System.out.println(chars1.length); char c='x';//需要插入的字符 int index=chars1.length; //找小标 for (int i = 0; i < chars1.length; i++) { if (c<chars1[i]) { index=i; break; } } /** * 元素后移 */ for (int j = chars1.length-1; j>index; j--) { chars1[j]=chars1[j-1]; } /** * 插入数据 */ chars1[index]=c; for (int i = 0; i < chars1.length; i++) { System.out.println(chars1[i]); } } }
6.多重数组:
package cn.kgc.shuzushiyong; /** * * @author Vip宅男 * */ public class DoubleArray03 { @SuppressWarnings("unused") public static void main(String[] args) { int[] clazz=new int[3];//保存班级 int[] students=new int[5];//保存学生 DoubleArray03 doubleArray03=new DoubleArray03(); doubleArray03.test05(); System.out.println("**************************************"); doubleArray03.test06(); } @SuppressWarnings("unused") public void test01(){//声明的同时开辟空间 int[][] nums=new int[3][5];//3个班级各五名学生 } @SuppressWarnings("unused") public void test02(){//先声明 再开辟空间 int[][] nums; nums=new int[3][5];//3个班级各五名学生 } public void test03(){//声明 开辟空间的同时赋值 int[][] nums={{1,2,3,4,5},{1,2,3,4,5},{1,2,3,4,5}}; System.out.println(nums.length);//3个班级各五名学生 } public void test04(){ int[][] nums=new int[3][5];//3个班级各五名学生 //第二个班级第三个学生 nums[1][2]=50; } public void test05(){ int[][] nums = { { 1, 2, 3 }, { 10, 20, 30 }, { 100, 200, 300 } }; /** * nums.length 车厢数 * nums[i].length 车厢中的座位数 * 双重循环: * 外层循环执行一次,内存循环执行一遍! */ for (int i = 0; i < nums.length; i++) { System.out.println("进入了第"+(i+1)+"个车厢****************"); if (i==2) { break;//跳出当前循环体 } for (int j = 0; j < nums.length; j++) { if (j==2) { break;//跳出当前循环体 } System.out.println(nums[i][j]); } } } public void test06(){ /** * 所有的引用数据类型如果没有实例化(开辟空间)! 不能使用! * 因为引用数据类型的默认值 是 null! */ int[][] nums1 = new int[5][]; System.out.println(nums1.length); nums1[0]=new int[5];//开辟空间 nums1[1]=new int[6]; nums1[0][0] = 50; // 使用 nums1[0][1] = 60; nums1[0][2] = 70; nums1[0][3] = 80; System.out.println(nums1[0].length); System.out.println(nums1[1].length); } }
7.冒泡排序:
package cn.kgc.shuzushiyong;
/**
* 冒泡排序 升序的排列
* @author Vip宅男
*
*/
public class DoubleArray04 {
public void test01(){
int [] nums={1,5,8,2,3,5};
/**
* 外层循环控制轮数 数组的长度-1
* 外层循环每执行一次, 内层循环执行一遍
*/
for (int i = 0; i < nums.length-1; i++) {
System.out.println("这是第"+(i+1)+"轮================");
/**
* 内层循环 数组的长度-1-i;
*/
for (int j = 0; j < nums.length-1-i; j++) {
System.out.println("比较了第"+(j+1)+"次");
}
}
}
/**
* 冒泡排序 升序的排列
* @param args
*/
public void test02(){
int [] nums={10,5,8,2,3,50,5000,500,30,65,98};
/**
* 外层循环控制轮数 数组的长度-1
* 外层循环每执行一次, 内层循环执行一遍
*
* 无论多少个数字相比
* 都是相邻的两个数字进行比较,
* 数值小的元素会交换前面的位置
* 代码:
* 外层循环 : 数组长度-1
* 内层循环: 数组长度-1-i
*
*/
for (int i = 0; i < nums.length-1; i++) {
//内层循环 数组的长度-1-i
for (int j = 0; j < nums.length-1-i; j++) {
if (nums[j]>nums[j+1]) {//相当于 第一个元素大于下一个元素 那么需要和下个元素换位置
//等量转换
int temp=nums[j];
nums[j]=nums[j+1];
nums[j+1]=temp;
}
}
}
/**
* 遍历数组中的元素
*/
for (int i : nums) {
System.out.println(i);
}
}
public static void main(String[] args) {
DoubleArray04 doubleArray04=new DoubleArray04();
doubleArray04.test01();
System.out.println("=============================");
doubleArray04.test02();
}
}
8.Arrays工具类的使用:
package cn.kgc.shuzushiyong;
import java.util.Arrays;
/**
*
* @author Vip宅男
*
*/
public class TestArrays {
/**
* Arrays.equals(数组1,数组2)
* 01.首先比较的而是数组的长度是否一致
* 02.比较数组中的元素
*/
public void test01(){
int nums1[]={10,20,30};
int nums2[]={10,20,30};
int nums3[]={10,30,20};
System.out.println(nums1==nums2); //比较内存地址 false
//equals
System.out.println(nums1.equals(nums2)); //底层还是比较内存地址 false
System.out.println(Arrays.equals(nums1, nums2));
//true
System.out.println(Arrays.equals(nums1, nums3)); //false
}
/**
* [L@4a7fca02 :数组toString()的结果
*/
public void test02(){
int nums1[]={10,20,30};
//把数组转换成字符串
System.out.println(Arrays.toString(nums1));
}
public void test03(){
int nums1[]={10,20,30};
//把数组转换成字符串
System.out.println(Arrays.toString(nums1));
//copyOf(数组,长度)
int[] nums2 = Arrays.copyOf(nums1, 10);
System.out.println(Arrays.toString(nums2));
}
public void test04(){
int nums1[]={10,20,30};
System.out.println("nums1之前的值:"+Arrays.toString(nums1));
//fill(数组,值)
Arrays.fill(nums1, 500);
System.out.println("nums1fill之后的值:"+Arrays.toString(nums1));
}
/**
* binarySearch(数组,值)
* 查询值 在数组中下标的位置
*/
public void test05(){
int nums1[]={100,200,10,20,30};
//01.必须先排序 升序
Arrays.sort(nums1);
//02.查询20的下标 [10,20,30,100,200]
System.out.println(Arrays.binarySearch(nums1, 20));
}
public static void main(String[] args) {
TestArrays test=new TestArrays();
test.test01();
System.out.println("************************");
test.test02();
System.out.println("************************");
test.test03();
System.out.println("************************");
test.test04();
System.out.println("************************");
test.test05();
}
}
9.二维数组:
package cn.kgc.shuzushiyong;
/**
*
* @author Vip宅男
*
*/
public class TestArrays02 {
/**
* 二维数组: 数组中的元素 又是一个数组!
*/
public void test01(){
//01.创建二维数组
int[][] nums=new int[3][3]; //int [][] nums2={{1,2,3},{4,5,6},{7,8,9}};
nums[0][0]=5;
nums[0][1]=6;
nums[0][2]=7;
nums[1][0]=5;
nums[1][1]=6;
nums[1][2]=7;
nums[2][0]=5;
nums[2][1]=6;
nums[2][2]=7;
}
public void test02(){
//01.创建二维数组
int [][] nums={{1,2,3,4},{4,5,6},{7,8}};
System.out.println(nums[0]);//{1,2,3}
System.out.println(nums[0][1]);//2
System.out.println("nums的长度:"+nums.length);
System.out.println("第2个数组中下标是2的元素"+nums[1][2]);
}
/**
* 循环打印出数组所有的元素
*/
public void test03(){
//01.创建二维数组
int [][] nums={{1,2,3,4},{4,5,6},{7,8}};
for (int i = 0; i < nums.length; i++) { //外层
System.out.println("这是2维数组中的第"+(i+1)+"个数组");
for (int j = 0; j < nums[i].length; j++) {//内层
System.out.println("元素的值:"+nums[i][j]);
}
}
}
public static void main(String[] args) {
TestArrays02 test=new TestArrays02();
test.test01();
System.out.println("**************************");
test.test02();
System.out.println("**************************");
test.test03();
}
}
10.二维数组小练习:
package cn.kgc.shuzushiyong;
import java.util.Scanner;
/**
*
* @author Vip宅男
*
*/
public class TestArrays03 {
/**
* 已知有3个班级各3名学员,请使用
*二维数组计算各个班级的总成绩
*/
public void test01(){
/**
* 01.创建一个二维数组
*/
int[][] nums=new int[3][4];
Scanner scanner=new Scanner(System.in);
/**
* 定义一个数组变量 存储每个班级的成绩
*/
int sum[]=new int[nums.length];
/**
* 02.让用户循环给数组 赋值
*/
for (int i = 0; i < sum.length; i++) {
System.out.println("输入第"+(i+1)+"个班级的学生成绩");
for (int j = 0; j < sum.length; j++) {
System.out.println("输入第"+(j+1)+"个学生成绩:");
nums[i][j]=scanner.nextInt();//学生成绩赋值
sum[i]=nums[i][j];//每个班级的总成绩
}
}
System.out.println("学生的成绩*************************");
for (int i = 0; i < nums.length; i++) {
for (int j = 0; j < nums.length; j++) {
System.out.println("输入第"+(i+1)+"个班级的第"+(j+1)+"个学生的成绩:"+nums[i][j]);
}
}
System.out.println("班级的成绩*************************");
for (int i = 0; i < sum.length; i++) {
System.out.println("第"+(i+1)+"个班级的总成绩:"+sum[i]);
}
}
public void test02(){
//有3个班各3名学生某门课程的成绩,
//01.定义一个2维数组
int [][] scores=new int[3][3];
Scanner scanner=new Scanner(System.in);
//02.循环给学生赋值
for (int i = 0; i < scores.length; i++) {
System.out.println("输入第"+(i+1)+"班级学生的成绩:===");
for (int j = 0; j < scores.length; j++) {
System.out.println("请输入第"+(j+1)+"个学生的成绩:");
scores[i][j]=scanner.nextInt();
}
}
System.out.println("学生的成绩统计如下******************");
// 如何计算3个班各自的总成绩?
for (int i = 0; i < scores.length; i++) {
//每个班级都清零
int sum=0;
for (int j = 0; j < scores.length; j++) {
sum+=scores[i][j];
}
System.out.println("第"+(i+1)+"班级学生成绩的总和==="+sum);
}
}
public static void main(String[] args) {
TestArrays03 test=new TestArrays03();
test.test01();
System.out.println("****************************");
test.test02();
}
}
相关文章推荐
- Java基础——数组的声明,初始化与使用
- Java基础之一组有用的类——使用比较器对数组排序(TrySortingWithComparator)
- Java基础知识强化之集合框架笔记09:Collection集合迭代器使用的问题探讨
- Java基础(极客)——09、Java面向对象中类与对象的概念和使用
- Java基础学习总结(67)——Java接口API中使用数组的缺陷
- Java基础---如何使用Java中的数组(三十)
- Java基础---使用Arrays类操作Java中的数组(三十二)
- Java开发基础——数组、List与Map的使用
- Java基础学习笔记13——(StringBuffer的使用,数组高级,Arrays工具类,Integer和Character等包装类)
- java语言基础入门——常用数组函数的使用
- java基础---->数组的基础使用(二)
- 01_Java基础_数组的定义、基本使用和简单应用
- java基础---->数组的基础使用(一)
- Java基础学习总结(67)——Java接口API中使用数组的缺陷
- Java基础---使用foreach操作数组(三十三)
- Java基础应用之循环控制(使用while与自增运算符循环遍历数组)
- Java基础---使用foreach操作数组(三十三)
- java09数组的使用
- java基础之如何使用java数组
- Java基础知识强化09:String、StringBuffer和StringBuilder使用