问什么一直看我这个图片
欢迎加入 xiaozhi 大家族
首页
推荐
百度一下
腾讯视频
Search
1
小米手机安装CA证书 MIUI13 Android 12可用
539 阅读
2
欢迎家人
225 阅读
3
2020.09.01 HTML 笔记
213 阅读
4
微信公众号推送早安问候以及天气预报 尾部附源码下载链接
199 阅读
5
MP代码生成器
175 阅读
默认分类
HTML初学日记
Java 笔记
小智的生活日记
Java 实用技巧
java面试经典问题
登录
Search
标签搜索
java基础
HTML初学记录
java分享
java抛错
小智
累计撰写
76
篇文章
累计收到
2
条评论
今日撰写
0
篇文章
首页
栏目
默认分类
HTML初学日记
Java 笔记
小智的生活日记
Java 实用技巧
java面试经典问题
页面
推荐
百度一下
腾讯视频
用户登录
登录
搜索到
11
篇与
java基础
的结果
2020-10-15
位逻辑运算符
位逻辑运算符位逻辑运算符包含 4 个:&(与)、|(或)、~(非)和 ^(异或)。除了 ~(即位取反)为单目运算符外,其余都为双目运算符。表 1 中列出了它们的基本用法。运算符含义实例结果&按位进行与运算(AND)4 & 54\ 按位进行或运算(OR)4 \55^按位进行异或运算(XOR)4 ^ 51~按位进行取反运算(NOT)~ 4-5位与运算符位与运算符为&,其运算规则是:参与运算的数字,低位对齐,高位不足的补零,如果对应的二进制位同时为 1,那么计算结果才为 1,否则为 0。因此,任何数与 0 进行按位与运算,其结果都为 0。例如下面的表达式:100&0图 1 所示为这个运算过程,结果为 0。图 1 100位与0的运算过程下面是两个非零的数字进行位与运算的过程。int x = 5,y = 12; // 创建整型变量保存两个数int z = x&y; // 对这两个数进行位与运算,结果保存到z这两行语句执行后变量 Z 的值是 4,图 2 所示为这个运算过程。图 2 5位与12的运算过程位或运算符位或运算符为|,其运算规则是:参与运算的数字,低位对齐,高位不足的补零。如果对应的二进制位只要有一个为 1,那么结果就为 1;如果对应的二进制位都为 0,结果才为 0。下面是一个使用位或运算符的表达式。11|7运算结果为 15,图 3 所示为其运算过程。图 3 11位或7的运算过程位异或运算符位异或运算符为^,其运算规则是:参与运算的数字,低位对齐,高位不足的补零,如果对应的二进制位相同(同时为 0 或同时为 1)时,结果为 0;如果对应的二进制位不相同,结果则为 1。下面是一个使用位异或运算符的表达式。11^7运算结果为 12,图 4 所示为其运算过程。图 4 11位异或7的运算过程提示:在有的高级语言中,将运算符^作为求幂运算符,要注意区分。位取反运算符位取反运算符为~,其运算规则是:只对一个操作数进行运算,将操作数二进制中的 1 改为 0,0 改为 1。下面是一个使用位取反运算符的表达式。~10运算结果为 65525,图 5 所示为其运算过程。图 5 对10位取反的运算过程我们可以使用如下的程序来检查这个运算结果。int i = 10;System.out.printf("%d \n",~i);编译执行以上程序,会发现输出的结果是 -11,而不是 65525。这是因为取反之后的结果是十六进制数,而在上面的程序中使用 %d 将输出转换为了十进制数。可以使用如下语句查看十六进制结果。int i=10;System.out.printf("%x \n",~i);可以看到输出结果为 fff5,将它转换为二进制是 1111111111110101。这个二进制数的最高位为 1,表示这个数为负数。除最高位外,按位取反再加 1,即得到二进制原码 1000000000001011,用十进制数表示即为 -11。注意:位运算符的操作数只能是整型或者字符型数据以及它们的变体,不用于 float、double 或者 long 等复杂的数据类型。位移运算符位移运算符用来将操作数向某个方向(向左或者右)移动指定的二进制位数。表 2 列出了 Java 语言中的两个位移运算符,它们都属于双目运算符。运算符含义实例结果»右移位运算符8»14«左移位运算符9«236左位移运算符左移位运算符为«,其运算规则是:按二进制形式把所有的数字向左移动对应的位数,高位移出(舍弃),低位的空位补零。例如,将整数 11 向左位移 1 位的过程如图 6 所示。图 6 对11左移1位运算过程从图 6 中可以看到,原来数的所有二进制位都向左移动 1 位。原来位于左边的最高位 0 被移出舍弃,再向尾部追加 0 补位。最终到的结果是 22,相当于原来数的 2 倍。右位移运算符右位移运算符为»,其运算规则是:按二进制形式把所有的数字向右移动对应的位数,低位移出(舍弃),高位的空位补零。例如,将整数 11 向右位移 1 位的过程如图 7 所示。图 7 对11右移1位运算过程从图 7 中可以看到,原来数的所有二进制位都向右移动 1 位。原来位于右边的最低位 1 被移出舍弃,再向最高位追加 0 补位。最终到的结果是 5,相当于原数整除 2 的结果。复合位赋值运算符所有的二进制位运算符都有一种将赋值与位运算组合在一起的简写形式。复合位赋值运算符由赋值运算符与位逻辑运算符和位移运算符组合而成。表 3 列出了组合后的复合位赋值运算符。运算符含义实例结果&=按位与赋值num1 &= num2等价于 num 1=num 1 & num2\=按位或赋值num1 \= num2等价于 num 1=num 1 \num2^=按位异或赋值num1 ^= num2等价于 num 1=num 1 ^ num2-=按位取反赋值num1 ~= num2等价于 num 1=num 1 ~ num2«=按位左移赋值num1 «= num2等价于 num 1=num 1 « num2»=按位右移赋值num1 »= num2等价于 num 1=num 1 » num2
2020年10月15日
18 阅读
0 评论
0 点赞
2020-10-15
Java 抛错记录
抛错ArithmeticException 算数异常Infinity 无穷大 例如两个浮点数相除NaN 不是一个数字 例如浮点型 0/0 整数型0/0报错NullPointerException 空指针异常
2020年10月15日
21 阅读
0 评论
0 点赞
2020-10-15
Day9 面向对象
Day9 面向对象封装 继承 多态方法名符合小驼峰命名java对于文件的管理package(default) 包 默认 任何类型都能访问 public 公开 只有同包类型可以访问private 私有 只有自己可见无参构造 初始化自定义类型String 字符串常量池 定位 str.charAt(index); 给脚标求数值给脚标 找数值 str.substring(index); 从脚标去截断 取出他和他后边的数值str.substring(a,b); a到b 包含a 不包含bstr.indexOf("a",1); 找出a字符 从第一个开始找
2020年10月15日
22 阅读
0 评论
0 点赞
2020-10-15
Day 10 String方法
Day 10定位 str.charAt(index); 给脚标求数值给脚标 找数值 str.substring(index); 从脚标去截断 取出他和他后边的数值str.substring(a,b); a到b 包含a 不包含bstr.indexOf("a",1); 找出a字符 从第一个开始找str.replace("原有字符串","新字符串") 替换字符串str.toUpperCase() 字符全部变大写str.toLowerCase 字符全部变小写String[] agiao = str.split(" ") 截断双引号里边填写需要替换的字符 scanner.hasNextLine(); 判断是否有下一行 用于while(ture){}str.subSequence(a,b); a 第几行 b一行打印多少个str.contains(a) 包含a //定位1:知到脚标找值 char a = str.charAt(3); String strSub = str.substring(1,2); //定位2;知到值找脚标 int c = str1.indexOf("a",1); //从后边往前找 2表示从后边第几个开始找 int f = str1.lastIndexOf("c", 2);
2020年10月15日
22 阅读
0 评论
0 点赞
2020-10-15
Day-7 多维数组 面向对象
Day-7 多维数组 面向对象多维数组面向对象属性:只要有一个Car的对象,那么这个对象就应该有 以下的属性、这些属性也有另外一个名字 成 员变量/* * 方法 格式: 返回值类型 标识符(参数列表){} * 参数 方法入口 */ private 私有this 谁调用就指谁get 取值set 设置int[][] arrays = { {1,2,3}, {4,5,6,}, {7,8,9} }; //定义新数组 第一个行的长度 第二个有多少行 int[][] result = new int[arrays[0].length][arrays.length]; //循环行数 for(int i = 0 ;i < arrays.length ; i++) { //循环列 for(int j= 0 ; j < arrays[i].length ; j++) { //将原数组拿出来 int temp = arrays[i][j]; //列直接变行 直接换 int newRow = j; //第一行第一个变最倒数第一个 int newCol = result.length - 1 - i; // 将值赋给坐标 result[newRow][newCol] = temp; } }
2020年10月15日
20 阅读
0 评论
0 点赞
1
2
3