A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 怪学究 于 2015-5-4 23:44 编辑

package itcast;

/**
* @author hgm
*A:数组遍历
*int[] arr = {98,23,16,35,72};
*写一个对象数组操作的功能,实现把数组中的数据按照如下格式返回:
*"[98, 23, 16, 35, 72]"

*B:查找数组中指定元素第一次出现的索引值。
*int[] arr = {98,23,16,35,72};
*查找23在数组中的索引值。
*代码用Eclipse实现。
*/


//A:
public class Array {
         public static void main(String[] args) {
                        int[] arr={98,23,16,35,72};
                        printArray(arr);
        }
         public static void printArray(int[] arr) {

                System.out.print("[");
                for (int i = 0; i < arr.length-1; i++) {
                        System.out.print(arr+",");
                }
                System.out.print(arr[arr.length-1]);
                System.out.println("]");
       }
}


//B:
package itcast;
import java.util.Scanner;      //导包
public class SearchNum {
        public static void main(String[] args) {
                int[] arr={98,23,16,35,72};    //定义数组arr
                Scanner sc = new Scanner(System.in);           //键入数字num
                System.out.println("请输入数组中的一个数字num:");
                int num = sc.nextInt();
                for (int i = 0; i < arr.length; i++) {
                        if(arr==num){
                                System.out.println("该数字是数组中第"+(i+1)+"个");
                                break;
                        }
                }
        }
}

请帮忙完善第二小题:
               1  .         当输入的数字不是数组中的任一数时,输出:输入有误
               2.            将程序多次循环,当输入-1时,break。




3 个回复

倒序浏览
1017161726 来自手机 中级黑马 2015-5-4 23:37:03
沙发
你是想说什么的呢
回复 使用道具 举报
1017161726 发表于 2015-5-4 23:37
你是想说什么的呢

请帮忙完善第二小题:
               1  .         当输入的数字不是数组中的任一数时,输出:输入有误
               2.            将程序多次循环,当输入-1时,break
回复 使用道具 举报
明白了。。直接附上代码:
  1. package myPro;

  2. import java.util.Scanner;
  3. class SearchNum
  4. {
  5.         public static void main(String[] args)
  6.         {
  7.                 int[] arr={98,23,16,35,72};
  8.                 Scanner sc = new Scanner(System.in);
  9.                 while (true)                //无限循环,直到指定的退出方式
  10.                 {
  11.                         System.out.println("请输入数组中的一个数字num:");
  12.                         int num = sc.nextInt();
  13.                         if (num==-1)        //定义退出方式
  14.                                 break;
  15.                         int x=0;                //定义标记
  16.                         for (int i = 0; i < arr.length; i++)
  17.                         {
  18.                                 if(arr[i]==num)
  19.                                 {
  20.                                         System.out.println("该数字是数组中第"+i+++"个");
  21.                                         x=1;        //标记值的改变
  22.                                         continue;
  23.                                 }
  24.                         }
  25.                         if (x==0)                //判断标记
  26.                                 System.out.println("输入有误,请重新输入num:");
  27.                 }
  28.                 sc.close();                        //关闭扫描器资源
  29.         }
  30. }
复制代码



回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马