java中的操作符之三
来源:互联网 发布:淘宝兼职外宣说说大全 编辑:程序博客网 时间:2024/06/05 22:40
1.直接常量
import java.util.*;class tank{static int value;static boolean equals(tank a){return value==a.value;}}public class FirstStep{public static void main(String[] args){Integer i=new Integer(23);System.out.println(Integer.toBinaryString(i));/*采用二进制的方式输出*/int j=0x2f;//十六进制直接常量的定义System.out.println(Integer.toBinaryString(j));int k=012;//八进制的直接常量定义System.out.println(Integer.toBinaryString(k));char l=012;System.out.println(Integer.toBinaryString(l));} }运行结果:
10111
101111
1010
1010
2.按位操作符
按位操作符包含有三种,分别是按位与,或以及按位异或操作
按位与&:按照位数比较同时为1的时候,输出为1,其他情况全都为0
按位或:同时为0时,输出为0,其他情况输出为1
/*前面的两种都是二元操作符*/
按位异或:相同为0,相异为1
//一元操作符
程序代码段如下:
import java.util.*;class tank{static int value;static boolean equals(tank a){return value==a.value;}}public class FirstStep{public static void main(String[] args){Integer i=new Integer(23);System.out.println("i="+Integer.toBinaryString(i));/*采用二进制的方式输出*/int j=22;System.out.println("j="+Integer.toBinaryString(j));int k=j&i;System.out.println("i&j="+Integer.toBinaryString(k));k=j|i;System.out.println("i|j="+Integer.toBinaryString(k));k=~i;System.out.println("~i="+k);} }运行结果:
j=10110
i&j=10110
i|j=10111
~i=-24
3.移位操作符
<<向左方移位,低位补0;
>>向右方移位,高位补1;
>>>向右端移位,高位补0;
程序代码如下:
import java.util.*;class tank{static int value;static boolean equals(tank a){return value==a.value;}}public class FirstStep{public static void main(String[] args){int i=-1;System.out.println("i="+Integer.toBinaryString(i));i<<=10;System.out.println("i<<10="+Integer.toBinaryString(i));i>>=10;System.out.println("i>>10="+Integer.toBinaryString(i));i>>>=10;System.out.println("i>>>10="+Integer.toBinaryString(i));} }运行结果如下:
i=11111111111111111111111111111111
i<<10=11111111111111111111110000000000
i>>10=11111111111111111111111111111111
i>>>10=1111111111111111111111
4.if-else(不是条件操作符,它本身是可以产生一个值的)
简单而言就是一个条件判断赋值语句,这和C语言,C++是相同的
i?b:c;
若是i为真,那么i=b;否则i=c;
5.字符串操作符+和+=
字符串连接符号不同于C语言,不局限于字符串,字符串和其他类型的变量之间也是可以连接的
程序段如下:
import java.util.*;
class tank
{
static int value;
static boolean equals(tank a)
{
return value==a.value;
}
}
public class FirstStep{
public static void main(String[] args){
int i=1,j=2,k=3;
String a="i+j+k=";
System.out.println(a+i+j+k);
System.out.println(a+(i+j+k));
}
}
运行 结果如下:
i+j+k=123
i+j+k=6
在第一个输出中,所有的整型数据都是被当做字符串直接输出 的
而在第二个输出中,整型数据在括号内先进行计算得到6,再转化为符号‘6’输出的;
5.类型转换操作符
这个比较简单,使用方法:i=(int)k;
括号内为需要强制转化成的类型;
稍微需要注意的是向上转化,其实也很简单,假如i是整型int,k是浮点型float,那么i+j就是浮点型,因为浮点型比整形要大,就是一个向上取类型的过程。
6、截尾和舍入
一般情况下,比如float向int型转化时,小数点后的数字会直接被忽略掉,而不是四舍五入,如何做到舍入操作的,java中需要调用一个方法,就是Math类中的round();
程序段如下:
import java.util.*;class tank{static int value;static boolean equals(tank a){return value==a.value;}}public class FirstStep{public static void main(String[] args){float a = 0.3f,b=0.7f;System.out.println("(int)a="+(int)a+"\n"+"(int)b="+(int)b);System.out.println("Math.round(a)="+Math.round(a)+"\n"+"Math.round(b)="+Math.round(b));} }运行结果如下:
(int)a=0
(int)b=0
Math.round(a)=0
Math.round(b)=1
- java中的操作符之三
- 三 Java中的操作符
- JAVA基础之三:运算操作符
- java中的时间操作 三 定时任务
- java中的时间操作 三 定时任务
- java中的IO操作总结(三)
- java中的IO操作总结(三)
- redis学习心得之三-【java操作redis】
- redis学习心得之三-【java操作redis】
- redis学习心得之三-【java操作redis】
- MongoDB学习之三----Java操作MongoDB
- MongoDB系列之三:java操作MongoDB
- redis学习心得之三-【java操作redis】
- Redis笔记三之Java操作Redis
- Java操作Excel之Poi(三)
- Hbase笔记三之Java操作
- Kafka笔记三之java操作
- java中的&|^操作符
- UVA10189
- C指针原理(69)-C快速入门(2)
- 如何修改WAMP中mysql默认空密码
- Qt中IplImage转QImage
- 状态栏:requestWindowFeature()方法作用(状态栏处理,全屏)
- java中的操作符之三
- Eclipse构建Maven项目
- javascript 去掉输入字符中的空格
- C++ 程序员必经之路 —— 堆、栈
- 打开pjsip2.1版本的视频支持
- 生成单张表的数据库字典
- jquery插件jTemplates用法
- xcode 5中调试技巧
- C语言之尾队列tailq