《JavaEE黑马》 第一阶段 JavaSE基础 第五章进制/二维数组

进制

在这里插入图片描述
在这里插入图片描述

不同进制转换

在这里插入图片描述
在这里插入图片描述
十进制到二进制
除基取余在这里插入图片描述在这里插入图片描述

快速进制转换法

在这里插入图片描述
8421码就是BCD码
在这里插入图片描述
在这里插入图片描述

原码反码补码

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

位运算

十进制转换为二进制,
整数默认为int,4个字节,每个字节8个比特位
在这里插入图片描述

数据交换

两个变量数据交换
在这里插入图片描述
在这里插入图片描述

public class Method2 {
    public static void main(String[] args) {
        int a=10;
        int b=20;
        int temp=a;//3个变量
         a=b;
         b=temp;
        System.out.println(a);
        System.out.println(b);
    }
}
a=a^b;//a=10^20
b=a^b;
a=a^b;

在这里插入图片描述

元素反转

public class Method2 {
    public static void main(String[] args) {
        int[] arr={11,22,33,44,55};
    //1、定义两个变量,start和end表示开始和结束两个指针
        //4、每一次交换完成,改变两个指针索引
        for (int start=0,end=arr.length-1;start<end; start++,end--) {
            //2、确定交换条件,start《end
            //3、循环中编写交换元素代码
            int temp=arr[start];
            arr[start]=arr[end];
            arr[end]=temp;
        }
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }
    }
}

位移运算符

在这里插入图片描述
3>>1=1,整数相除,只能为整数
在这里插入图片描述
<< >>实现乘法的非常便利的操作,直接对二进制数进行计算
^运算符
一个数被另一个数异或两次,该数不变
10 ^ 5^5=10

二维数组

二维数组也是一种容器,存储的都是一维数组容器
定义格式:
int[][] arr
or 不常见的
int arr[] [];
int [] arr[];

动态初始化

数据类型[][]变量名=new数据类型[m][n]
m表示该数组可以存放多少个一维数组
n表示每个一维数组可以存放多少个元素

public class Method2 {
    public static void main(String[] args) {
    int[][] arr=new int[3][2];
    /*
    [[I@16b98e56
    @分隔符
    I 数据类型
    [[ 几个括号代表几维数组
     */
        System.out.println(arr);
    }
}

二维数组在存储时存储的就是一维数组的内存地址
arr[0][0]=11 //向二维数组赋值
在这里插入图片描述

静态初始化

数据类型[][]变量名=new数据类型[][]{{1,2},{1,2}}
数据类型[][]变量名={{1,2},{1,2}} //用的最多

public class Method2 {
    public static void main(String[] args) {
        int[] arr1={1,2,3};
        int[] arr2={11,22,33};
        int[][] arr={{1,2,3},{11,22,33}};
        int[][] arr3={arr1,arr2};
    }
}

二维数组遍历

在这里插入图片描述

public class Method2 {
    public static void main(String[] args) {
        int[] arr1={1,2,3};
        int[] arr2={11,22,33};
        int[][] arr={{1,2,3},{11,22,33,44}};
        //1.遍历二维数组,取出里面的每一个数组
        for (int i = 0; i < arr.length; i++) {
            //2.在遍历的过程中,对每一个一维数组完成遍历
            //int[] temp=arr[i];
            for (int j = 0; j < arr[i].length; j++){
                System.out.println(arr[i][j]);
            }
        }
    }
}

二维数组求和

public class Method2 {
    public static void main(String[] args) {
      int sum=0;
      int[][] arr={{22,66,44},{77,33,88},{25,45,65},{11,66,99}};
        for (int i = 0; i < arr.length; i++) {
            for (int j = 0; j < arr[i].length; j++){
                sum+=arr[i][j];
            }
        }
        System.out.println(sum);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值