精华内容
下载资源
问答
  • Java一维数组的练习题

    2020-03-09 13:29:25
    键盘输入学生的人数 和成绩并选取最大值,为学生的成绩进行划分等级 等级如下:①成绩与最高分差十分及以内 level=A ②成绩与最高分差二十分及以内 level=B ③成绩与最高分差三十分及以内 level=C ④其他...
    从键盘输入学生的人数 和成绩并选取最大值,为学生的成绩进行划分等级
    等级如下:①成绩与最高分差十分及以内    level=A
    		  ②成绩与最高分差二十分及以内    level=B
    		  ③成绩与最高分差三十分及以内    level=C
    		  ④其他    level=D
    代码如下
    
    
    import java.util.Scanner;
    public class ArrayTest01 {
     public static void main(String[]args) {
     Scanner scan=new Scanner(System.in);
      System.out.println("请输入学生人数:");
      int num=scan.nextInt();
      int[] scores=new int[num];
      System.out.println("请输入学生成绩:");
      for(int i=0;i<scores.length;i++) {
      scores[i]=scan.nextInt();
      }
      int maxScores=0;
       for(int i=0;i<scores.length;i++) {
       if(maxScores<scores[i]) {
        maxScores=scores[i];
       }
      }
      System.out.println("最高分是:"+maxScores);
      char lv;
      for(int i=0;i<scores.length;i++) {
       if(maxScores-scores[i]<=10) {
        lv='A';
       }else if(maxScores-scores[i]<=20) {
        lv='B';
       }else if(maxScores-scores[i]<=30) {
        lv='C';
       }else {
        lv='D';
       }
       System.out.println("学生"+i+"成绩是"+scores[i]+",等级是"+lv);
       		}
       	}
       }
    展开全文
  • Java获取键盘输入任意长度二维数组

    千次阅读 2020-03-07 14:48:48
    维数组,每一维想要输入任意个数的字符用空格隔开时可以用以下代码 import java.util.Scanner; public class Main { public static void main(String[] args) { int a[][]=new int[100][100]; int n; ...

    二维数组,每一维想要输入任意个数的字符用空格隔开时可以用以下代码

    import java.util.Scanner;
     
    public class Main {
    	public static void main(String[] args) {
    		int a[][]=new int[100][100];
    		int n;
    		Scanner in=new Scanner(System.in);
    		n=in.nextInt();
    		//跳过这行换行符  
    		in.nextLine();	
    		for(int i=0;i<n;i++){
    		String strLine = in.nextLine();   
    		Scanner s = new Scanner(strLine); 
    		int j=0;
    		while(s.hasNextInt()){
    			a[i][j++]=s.nextInt();		
    				}
    		}	
    		//输出
    		for( int i=0;i<n;i++){
    			int j=0;
    			while(a[i][j]!=0)
    			System.out.print(a[i][j++]+"  ");
    			System.out.println();
    		}
    	
    	}
     
    }
    
    展开全文
  • Java教程当数组中每个元素都只带有一个下标时,这种数组就是“一维数组”。一维数组(one-dimensional array)实质上是一组相同类型数据的线性集合,是数组中最简单的一种数组。 数组是引用数据类型,引用数据类型在...

    Java教程当数组中每个元素都只带有一个下标时,这种数组就是“一维数组”。一维数组(one-dimensional array)实质上是一组相同类型数据的线性集合,是数组中最简单的一种数组。

    数组是引用数据类型,引用数据类型在使用之前一定要做两件事情:声明和初始化。所以本文将重点介绍一维数组的创建、初始化和使用。

    创建一维数组

    为了在程序中使用一个数组,必须声明一个引用该数组的变量,并指明整个变量可以引用的数组类型。声明一维数组的语法格式为:

    type[] arrayName;    // 数据类型[] 数组名;

    或者

    type arrayName[];    // 数据类型 数组名[];

    可见数组的声明有两种形式:一种是中括号”[]“跟在元素数据类型之后,另一种是中括号”[]“跟在变量名之后。

    对于以上两种语法格式而言,Java 更推荐采用第一种声明格式,因为第一种格式不仅具有更好的语意,而且具有更好的可读性。对于第一种格式type[] arrayName,很容易理解这是定义一个变量,其中变量名是 arrayName,而变量类型是 type[]。

    前面已经指出:type[] 确实是一种新类型,与 type 类型完全不同(例如 int 类型是基本类型,但 int[] 是引用类型)。因此,这种方式既容易理解,也符合定义变量的语法。但第二种格式type arrayName[]的可读性就差了,看起来好像定义了一个类型为 type 的变量,而变量名是 arrayName[],这与真实的含义相去甚远。
    本篇文章由 泉州SEO www.234yp.com 整理发布,Java教程 www.234yp.com/Article/198060.html 谢谢合作!
    可能有些读者非常喜欢type arrayName[]这种定义数组的方式,这可能是因为早期某些计算机读物的误导,从现在开始最好就不要再使用这种糟糕的方式了。

    提示:Java 的模仿者 C# 就不再支持type arrayName[]这种语法,它只支持第一种定义数组的语法。越来越多的语言不再支持type arrayName[]这种数组定义语法。

    以上两种格式都可以声明一个数组,其中的数据类型既可以是基本数据类型,也可以是引用数据类型。数组名可以是任意合法的变量名。声明数组就是要告诉计算机该数组中数据的类型是什么。例如:

    int[] score;    // 存储学生的成绩,类型为整型
    double[] price;    // 存储商品的价格,类型为浮点型
    String[] name;    // 存储商品名称,类型为字符串型


    在声明数组时不需要规定数组的长度,例如:

    int score[10];    // 这是错误的


    注意:在声明数组变量时千万不要漏写[]。

    分配空间

    声明了数组,只是得到了一个存放数组的变量,并没有为数组元素分配内存空间,不能使用。因此要为数组分配内存空间,这样数组的每一个元素才有一个空间进行存储。

    简单地说,分配空间就是要告诉计算机在内存中为它分配几个连续的位置来存储数据。在 Java 中可以使用 new 关键字来给数组分配空间。分配空间的语法格式如下:

    arrayName = new type[size];    // 数组名 = new 数据类型[数组长度];

    其中,数组长度就是数组中能存放的元素个数,显然应该为大于 0 的整数,例如:

    score = new int[10];
    price = new double[30];
    name = new String[20];

    这里的 score 是已经声明过的 int[] 类型的变量,当然也可以在声明数组时就给它分配空间,语法格式如下:

    type[] arrayName = new type[size];    // 数据类型[] 数组名 = new 数据类型[数组长度];

    例 1

    例如,声明并分配一个长度为 5 的 int 类型数组 arr,代码如下:

    int[] arr = new int[5];

    执行后 arr 数组在内存中的格式如图 1 所示。


    图 1  一维数组的内存格式
    在图 1 中 arr 为数组名称,方括号“[]”中的值为数组的下标。数组通过下标来区分数组中不同的元素,并且下标是从 0 开始的。因此这里包含 5 个元素的 arr 数组最大下标为 4。

    注意:一旦声明了数组的大小,就不能再修改。这里的数组长度也是必需的,不能少。

    尽管数组可以存储一组基本数据类型的元素,但是数组整体属于引用数据类型。当声明一个数组变量时,其实是创建了一个类型为“数据类型[]”(如 int[]、double[]、String[])的数组对象,它具有表 1 所示的方法和属性。

    表 1 数组的方法和属性 方法 名称 返回值 clone() Object equals(Object obj) boolean getClass() Class<?> hashCode() int notify() void notify All() void toString() String wait() void wait(long timeout) void wait(long timeout,int nanos) void 属性 length int

    初始化一维数组

    Java 语言中数组必须先初始化,然后才可以使用。所谓初始化,就是为数组的数组元素分配内存空间,并为每个数组元素赋初始值。

    能不能只分配内存空间,不赋初始值呢?

    不行,一旦为数组的每个数组元素分配了内存空间,每个内存空间里存储的内容就是该数组元素的值,即使这个内存空间存储的内容为空,这个空也是一个值(null)。不管以哪种方式来初始化数组,只要为数组元素分配了内存空间,数组元素就具有了初始值。初始值的获得有两种形式,一种由系统自动分配,另一种由程序员指定。

    数组在初始化数组的同时,可以指定数组的大小,也可以分别初始化数组中的每一个元素。在 Java 语言中,初始化数组有以下 3 种方式。

    1)使用 new 指定数组大小后进行初始化

    使用 new 关键字创建数组,在创建时指定数组的大小。语法如下:

    type[] arrayName = new int[size];

    创建数组之后,元素的值并不确定,需要为每一个数组的元素进行赋值,其下标从 0 开始。

    例 2

    创建包含 5 个元素的 int 类型的数组,然后分别将元素的值设置为 1、2、3、5 和 8。代码如下:

    int[] number = new int[5];
    number[0] = 1;
    number[1] = 2;
    number[2] = 3;
    number[3] = 5;
    number[4] = 8;


    如果程序员只指定了数组的长度,那么系统将负责为这些数组元素分配初始值。指定初始值时,系统按如下规则分配初始值。

    • 数组元素的类型是基本类型中的整数类型(byte、short、int 和 long),则数组元素的值是 0。
    • 数组元素的类型是基本类型中的浮点类型(float、double),则数组元素的值是 0.0。
    • 数组元素的类型是基本类型中的字符类型(char),则数组元素的值是‘\u0000’。
    • 数组元素的类型是基本类型中的布尔类型(boolean),则数组元素的值是 false。
    • 数组元素的类型是引用类型(类、接口和数组),则数组元素的值是 null。

    2)使用 new 指定数组元素的值

    使用上述方式初始化数组时,只有在为元素赋值时才确定值。可以不使用上述方式,而是在初始化时就已经确定值。语法如下:

    type[] arrayName = new type[]{值 1,值 2,值 3,值 4,• • •,值 n};

    例 3

    更改例 2 中的代码,使用 new 直接指定数组元素的值。代码如下:

    int[] number = new int[]{1, 2, 3, 5, 8};

    上述代码的效果等价于例 2 的效果。

    注意:不要在进行数组初始化时,既指定数组的长度,也为每个数组元素分配初始值,这样会造成代码错误。例如下面代码:

    int[] number = new int [5] {1,2,3,4,?5};

    3)直接指定数组元素的值

    在上述两种方式的语法中,type 可以省略,如果已经声明数组变量,那么直接使用这两种方式进行初始化。如果不想使用上述两种方式,那么可以不使用 new 直接指定数组元素的值。语法如下:

    type[] arrayName = {值 1,值 2,值 3,...,值 n};

    例 4

    在前面例子的基础上更改代码,直接使用上述语法实现 number 数组的初始化。代码如下:

    int[] number = {1,2,3,5,8};

    使用这种方式时,数组的声明和初始化操作要同步,即不能省略数组变量的类型。如下的代码就是错误的:

    int[] number;
    number = {1,2,3,5,8};

    获取单个元素

    获取单个元素是指获取数组中的一个元素,如第一个元素或最后一个元素。获取单个元素的方法非常简单,指定元素所在数组的下标即可。语法如下:

    arrayName[index];

    其中,arrayName 表示数组变量,index 表示下标,下标为 0 表示获取第一个元素,下标为 array.length-1 表示获取最后一个元素。当指定的下标值超出数组的总长度时,会拋出 ArraylndexOutOfBoundsException 异常。

    例 5

    获取 number 数组中的第一个元素、最后一个元素和第六个元素,并将元素的值输出。代码如下:

    int[] number = {1,2,3,5,8};
    System.out.println("获取第一个元素:"+number[0]);
    System.out.println("获取最后一个元素:"+number[number.length-1]);
    System.out.println("获取第6个元素:"+number[5]);

    执行上述代码,输出结果如下所示:

    获取第一个元素:1
    获取最后一个元素:8
    java.lang.ArrayIndexOutOfBoundsException: 5

    我们一共存入了 5 个值,所以下标的取值为 0~4。因为 number[5] 取出的内容超过了这个下标,所以输出结果会提示数组索引超出绑定异常(ArrayIndexOutOfBoundsException)。这一点是在使用数组中是经常出现的问题,大家在编写程序时应该引起注意。

    例 6

    编写一个 Java 程序,使用数组存放录入的 5 件商品价格,然后使用下标访问第 3 个元素的值。

    import java.util.Scanner;
    
    public class Test06 {
        public static void main(String[] args) {
            int[] prices = new int[5]; // 声明数组并分配空间
            Scanner input = new Scanner(System.in); // 接收用户从控制台输入的数据
            for (int i = 0; i < prices.length; i++) {
                System.out.println("请输入第" + (i + 1) + "件商品的价格:");
                prices[i] = input.nextInt(); // 接收用户从控制台输入的数据
            }
            System.out.println("第 3 件商品的价格为:" + prices[2]);
        }
    }

    上述代码的“int[] prices = new int[5]”语句创建了需要 5 个元素空间的 prices 数组,然后结合 for 循环向数组中的每个元素赋值。

    注意:在 Java 中取得数组的长度(也就是数组元素的长度)可以利用“数组名称.length”,返回一个 int 型数据。

    数组的索引从 0 开始,而 for 循环中的变量 i 也从 0 开始,因此 score 数组中的元素可以使用 scored 来表示,大大简化了代码。最后使用 prices[2] 获取 prices 数组的第 3 个元素,最终运行效果如下所示。

    请输入第1件商品的价格:
    5
    请输入第2件商品的价格:
    4
    请输入第3件商品的价格:
    6
    请输入第4件商品的价格:
    4
    请输入第5件商品的价格:
    8
    第 3 件商品的价格为:6

    获取全部元素

    当数组中的元素数量不多时,要获取数组中的全部元素,可以使用下标逐个获取元素。但是,如果数组中的元素过多,再使用单个下标则显得烦琐,此时使用一种简单的方法可以获取全部元素——使用循环语句。

    下面利用 for 循环语句遍历 number 数组中的全部元素,并将元素的值输出。代码如下:

    int[] number = {1,2,3,5,8};
    for (int i=0;i<number.length;i++) {
        System.out.println("第"+(i+1)+"个元素的值是:"+number[i]);
    }

    除了使用 for 语句,还可以使用 foreach 遍历数组中的元素,并将元素的值输出。代码如下:

    for(int val:number) {
        System.out.print("元素的值依次是:"+val+"\t");
    }
    展开全文
  • JAVA一维数组求最大值

    2021-08-04 13:00:02
    键盘输入本次Java考试五位学生的成绩,求考试成绩最高分。代码如下: public static void main (String[] args){ int[] score=new int[5]; System.out.println("请输入五位同学的成绩"); Scanner input=new ...

    从键盘输入本次Java考试五位学生的成绩,求考试成绩最高分。代码如下:

    public static void main (String[] args){
        int[] score=new int[5];
        System.out.println("请输入五位同学的成绩");
        Scanner input=new Scanner(System.in);
        for(int i=0;i<score.length;i++){
            System.out.print("请输入第"+(i+1)+"位同学的成绩");
            score[i]=input.nextInt();
         }
        int max=score[0];
        for(int i=0;i<score.length;i++){
            if(max<score[i]){
            max=score[i];
        }
          
        }
         System.out.println(max);
    } 

    展开全文
  • public static void main(String[] args) { Scanner in=new Scanner(System.in)...//二维数组行数 System.out.println("输入列数"); int columns=in.nextInt();//二维数组列数 int matrix[][] =new int[rows][colum
  • 冒泡排序 排序算法有多种,常用的排序算法有冒泡排序、插入排序、选择排序、快速排序、...冒泡排序的算法是通过对相邻元素的大小进行比较,每轮将个最小或最大的数放到队列的最后面,冒泡排序算法如图所示。 ...
  • Java一维数组练习题

    2020-07-15 21:58:01
    1 一维数组 1.1 练习1_巧查号码 题目: 查出联系电话 public class ArraysTest1 { public static void main(String[] args) { int[] arr = new int[] {7,3,1,0,5}; int[] list = new int[] {2,0,3,3,4,1,1,...
  • 1.数组动态初始化格式:数据类型[] 数组名称=new 数据类型[元素个数];2.数组静态初始化指定元素的内容,系统默认长度格式:数据类型[] 数组名称=new 数据类型[] {元素1,元素2,元素3……};简写方式:数据类型[] ...
  • Java编程笔试时输入问题:如何输入固定长度、不定长度的一维数组?如何输入固定长度、不定长度的二维数组? 一、如何输入固定长度的一维数组? 代码实现: import java.util.Scanner; public class Solution { ...
  • day5 1.数组介绍 数组:存储多种数据类型的多个数。 int [ ] arr={80,76,65} 2.数组定义格式和静态初始化 静态初始化:在内存中,为数组容器开辟空间,并将元素存入空间 ...//创建数组 double [] ar
  • 今天小编就为大家分享java 键盘输入一个数,输出数组中指定元素的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 一维数组 二维数组 学习时间: 2020-11-17 学习产出: 数组 数组概念: 数组是存储同一种数据类型多个元素的集合。也可以看成是一个容器。 数组既可以存储基本数据类型,也可以存储引用数据类型。 数组的初始化 ...
  • public class SZ { public static void main(String[] args) { ... System.out.println("请输入行数"); int h=sc.nextInt(); System.out.println("请输入列数"); int l=sc.nextInt(); S...
  • Java中二维数组的动态初始化

    千次阅读 2020-07-11 17:50:27
    java中二维数组的动态初始化: 使用new关键字实例化,不是直接等于{{“hello”, “world”}, {“I”, “am”, “coming”}} 注意:维度 和 初始化不能同时出现。 public class ArrayTest07 { public static void ...
  • 数组一、一维数组1. 一维数组概念及定义格式2. 一维数组的初始化1)动态初始化2)静态初始化3. Java中内存分配及堆栈的区别4. 数组操作中常见问题5. 一维数组内存图解6. 一维数组练习二、二维数组1. 二维数组概述及...
  • 数组是相同类型的数据按顺序组成的种引用数据类型 提醒:数组一旦被创建,它的大小是固定的。 2.数组声明: 数组类型[]   数组名 或则 数据类型 数组名[] 3.创建数组: 先声明,后创建 数组名 = ...
  • 一维数组 //定义:数据类型[] 数组名; int[] arr; //静态初始化 int[] arr= {11,22,33}; //动态初始化 int[] arr= new int[3];//默认初始值会为0 System.out.println(arr);//一个地址值 System.out.println(arr[0...
  • 1.认识并了解数组 前面我们已经了解了如整型、字符型、浮点型等数据类型,这些数据类型的操作的往往是单个数据,这边可以举个例子(如下) 要求存储10个学生某门学科的成绩,并且求出平均分。 分析: 用我们...
  • 通过二维数组统计5个学生语文、数学、英语的成绩,首先输入学生人数,然后依次输入各个学生的成绩,最后统计每个学生的课程平均成绩,及每门课的平均成绩,并列表输出。</p>
  • 为了方便组织各种信息,计算机常将信息以表的形式进行组织,然后再以行和列的...在 Java 中二维数组被看作数组的数组,即二维数组为一个特殊的一维数组,其每个元素又是一个一维数组Java 并不直接支持二维数组,...
  • java再体验之键盘输入数组 欢迎使用Markdown编辑器 你好! 这是你第次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。 新的...
  • Java维数组实现学生成绩存储

    千次阅读 2020-07-08 11:02:59
    import java.util.Scanner; public class ScoreReceiveAndOutput { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int scoreArr[][] = new int[2][3]; // 循环接收2个...
  • java输入任意长度二维数组

    万次阅读 2017-02-18 14:18:51
    维数组,每一维想要输入任意个数的字符用空格隔开时可以用以下代码,如有更好的方法欢迎讨论。 package basic_practice; import java.util.Scanner; public class Main { public static void main(String[] ...
  • 动态的,可以随意定义二维数组的长度,但是一维数组长度,必须固定 String[][] arr3 = new String[2][]; arr3[0] = new String[]{"小明"}; arr3[0] = new String[2]; System.out.println(arr3[0]); System....
  • 输入5个同学的学号和姓名(格式:“姓-名”),存储在二维数组中检查输入同学学号和姓名的格式,不符合要求,则输出提示:“数据格式错误,请重新输入”,对输入同学的信息按学号排序。这是今天java老师布置的课堂...
  • java中二维数组的定义及简单应用

    万次阅读 多人点赞 2017-07-20 00:05:26
    维数组的定义:  可以简单理解为在数组中又存储了数组  两种初始化形式  格式1: 动态初始化 数据类型 数组名 [ ][ ] = new 数据类型[m][n] 数据类型 [ ][ ] 数组名 = new 数据类型[m][n] 数据类型 [ ] ...
  • Java中如何通过键盘输入一数组

    千次阅读 多人点赞 2019-08-09 11:25:41
    有时候在编写Jave的时候需要键盘输入一数组,本小白也是看了几篇博客后才知道了如何在自己的程序中进行键盘输入,废话不多说,直接上代码: 第种方法:(不限制输入数组的长度) System.out.println(“请输入...
  • 杰神之JAVA维数组(案例:走迷宫)

    千次阅读 2018-01-05 20:00:07
    Java二维数组(案例:走迷宫)二维数组数组的数组—二维数组的每一个元素是一个一维数组 定义方式:数据类型[][] 数组名 = new 数据类型[长度][长度]; 数据类型[][] 数组名 = new 数据类型[][]{{元素1,元素2...,元素n},...
  • 删除一维数组中相同的元素
  • 我们要清楚长度为12的一维数组有a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],a[11]长度为13的一维数组有a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],a[11],a[12]

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 9,001
精华内容 3,600
关键字:

java一维数组键盘输入

java 订阅