Java基础18/2/6

    • 知识点
    • 个人理解
    • 总结

知识点

1.数组映射
2.增强for循环练习
3.随机数的使用
4.Scanner输入
5.从随机数组中提取不重复的元素

个人理解

数组映射
public class 映射方式 {
    /*
     * 
     *       * 1、个位是7的
             * 2、十位是2的
             * 3、百位是3的* 
             * 4、三位数
             * 5、二位数
     */

    public static void main(String[] args) {
        int[] nums={157,85,777,21,307,8,300,325,177,8888};
        boolean[] ge=new boolean[nums.length];  //true false
        boolean[] shi=new boolean[nums.length];
        boolean[] bai=new boolean[nums.length];
        int[] weishu=new int[nums.length];      //1,2
        for (int i = 0,num; i < nums.length; i++) {
            num=nums[i];
            if(num%10==7){
                ge[i]=true;
            }
            if(num/10%10==2){
                shi[i]=true;
            }
            if(num/100==3){
                bai[i]=true;
            }
            if(num>=100&&num<1000){
                weishu[i]=3;        //3位
            }else if(num>=10&&num<100){
                weishu[i]=2;        //2位
            }
            //System.out.print(nums[i]+"\t");
        }
//       * 1、个位是7的,十位是2的            if(ge[i]&&shi[i])
//       * 2、个位是7的,三位数          if(ge[i]&&weishu==3)
//       * 3、既不是二位数也不是三位数的  if(weishu!=2&&weishu!=3)

        for (int i = 0; i < nums.length; i++) {
            if(ge[i]&&weishu[i]==3){            //判断i下标位置是否同时满足两种条件
                System.out.print(nums[i]+"\t"); //输出原数组中的i
            }
        }


    }
}

增强for循环练习

//  int[]  nums={1,2,3,4,5,6,8,9,7};
//  int[][] ns=new int[10][10];

//  for(int i=0,num;i
//      num=nums[i];
//      System.out.print(num+",");
//  }

//  for (int num : nums) {                  //直接获取副本num
//      System.out.print(num+",");
//  }
//  for (int[] is: ns) {
//      for (int i : is) {
//          System.out.print(i+"\t");
//      }
//      System.out.println();
随机数&Scanner键盘输入
Random a=new Random();
Scanner a=new Scanner(System.in);
// String s=in.next();
        // int a=in.nextInt();
随机数组提取下标不同元素
int[] nums=new int[25];
        boolean[] n=new boolean[nums.length];
        for (int i = 0; i < nums.length; i++) {
            nums[i]=ran.nextInt(50);
        }
        for (int i = 0,j; i < 10; i++) {
            for(;;){
                j=ran.nextInt(25);
                if(!n[j]){
                    System.out.println((j+1)+"\t"+nums[j]);
                    n[j]=true;
                    break;

总结

A

你可能感兴趣的:(Java基础18/2/6)