黑马程序员_运算符及进位转换
来源:互联网 发布:python xpath 编辑:程序博客网 时间:2024/06/06 00:50
---------------------- <a href="http://edu.csdn.net/heima" target="blank">android培训</a>、<a href="http://edu.csdn.net/heima" target="blank">java培训</a>、期待与您交流! ----------------------
标识符:
由26个英文字母大小写,数字,0-9 符号:_$组成
规则:1,数字不可以开头。
2,不可以使用关键字。
java中严格区分大小写。
包名:全部小写。xxxyyyzzz
类名:所有单词首字母大写。XxxYyyZzz
变量名和函数名:第一个单词首字母小写,第二个单词开始每隔单词
首字母大写。xxxYyyZzz
常量名:所有字母大写,多单词用下划线连接。XXX_YYY_ZZZ
内存,硬盘中数据都是二进制
ASCII 码
二进制3位代表一位,即为8进制(2的3次方为8)
二进制4位代表一位,即为16进制(2的4次方为16)
进制越大,表现形式越短(进制前加0x,例:90=0x5A)
---------------------------------------------------------------
进制转换:
1,十进制转二进制。
原理:对十进制进行除2运算,余数依次往左写
2,二进制转十进制。
原理:二进制乘以2(幂运算)
110=>0*2(0)+1*2(1)+1*2(2)=6
二进制加法:逢2进1.
其他进制转换:先转成二进制(转16进制,4个为一组)
负数的二进制:正数的二进制取反+1(去反:1变0,0变1)
负数的最高位都是1。
变量:将不确定的数据进行存储,在内存中开辟一个空间。
就是通过明确数据类型,分配不同空间。
byte:8位二进制,(-128--127)
short:16位二进制,
不同类型不可运算,转为同一类型.
int:32位二进制(默认),4个byte
long:
float(单精度):4个byte
double(双精度):8个byte(默认double)
数据类型 变量名=初始化值
float f=2.3f;后一个f代表flort型
当数据不确定时,需要对数据进行存储是,就定义一个变量来存储
char型可以运算(char字符对应ASCII 码)
/号:取整
%号:取余
负数只看左边,结果等于左边,
例如:-1%5=-1;-7%5=-2;7%-5=2
---------------------------------------------
++a;++在左,先使用a的值再加1
a++;++在右,先加1在使用a
+:加号;字符串连接符
字符串数据和任何数据使用+号都是相连接,最终都会变成字符串
"5+5="+5+5="5+5=55"
-------------------------------------------------
转义字符:通过\来转换后面字母或符号的含义
\n:换行
\r:按下回车键。windows系统中,回车键是由两个字符来表示的\r\n;
打印带双引号"\"hello\""
char中可以存中文
x+=4;即为x=x+4;
short s=4;
s=s+5;s被提升位int型,结果为int型,而s位short型,不可赋值
s+=5;只做一次赋值运算,吧右边的和赋给左边
逻辑运算符用于连接boolean类型的表达式。
与运算&。。。。。都真时真
或|。。。。。。。一个真即为真,全假即假
异或运算^。。。。。相同为假,不同为真
&和&&:
&&:左边为false时右边不运算。(短路)
-----------------------------------------------------------
位运算符(全部转换为2进制后运算)
3<<2=12: 3左移两位,后面空位补0(a<<n结果:a*(2的n次幂))
3的ASCII 码0000-0000 0000-0000 0000-0000 0000-0011
结果:0000-0000 0000-0000 0000-0000 0000-1100
正数补0,负数补1.
6>>2=1: 右移2位(a>>n结果:a/(2的n次幂)取整)
0000-0000 0000-0000 0000-0000 0000-0110
0000-0000 0000-0000 0000-0000 0000-0001
>>:正数补0,负数补1.最高位为0,补0;最高位为1,补1.
>>>:全部补0;
~:取反,~6=-7(6取反加1)
一个数异或同一个数两次,结果还是原数。
利用位运算计算2*8更高效:2<<3(8为2的3次幂)
交换n=3和m=8的值:
1,通过第三方变量z;
2,n=m+n;//n=11,m=8
m=n-m;//m=3 ,n=11
n=n-m;//n=8,m=3
如果n和m的值很大,容易超出int范围
3,n=n^m;//异或
m=n^m;//(n^m)^m
n=n^m;//n^(n^m)
编程实现二进制转16进制:
例如:60的二进制
0000-0000 0000-0000 0000-0000 0011-1100=60
60&15=12
0000-0000 0000-0000 0000-0000 0011-1100
想与0000-0000 0000-0000 0000-0000 0000-1111
结果0000-0000 0000-0000 0000-0000 0000-1100=12
temp=60>>4 (60右移4位)
temp&15=3
0000-0000 0000-0000 0000-0000 0011
想与0000-0000 0000-0000 0000-0000 0000-1111
结果0000 0000-0000 0000-0000 0000-0000 0011=3
依次右移4位,直到得出所有值
编程实现:
int num = 60;
//获取60的最低4位
int n1 = num & 15;
//将12 转换为16进制
char n = (char)(n1-10+'A');
System.out.println(n1>9?(char)(n1-10+'A'):n1);
//获取下一组4位,将60右移4位
//用>>>三位右移,补0,移光
int temp = 60 >>> 4;
//对temp的值进行最低4位的获取
int n2 = temp & 15;
System.out.print(n2);
System.out.println(n);
------------------------------------------------
if....else:
结构简化格式: 变量=(条件表达式)?表达式1:表达式2;
三元运算符:
好处:可以简化if else代码。
弊端:因为是一个运算符,所以运算完必须有一个结果。
switch(表达式)//byte short int char
{
case 1:
break;
case 2:
break;
......
default:
break;
}
总在最后执行default
if与swith用法:
对具体数值且数值不多而且符合byte short int char类型时用swith。
其他情况:对区间判断,对结果为boolean判断,使用if,if的使用范围广。
---------------------- <a href="http://edu.csdn.net/heima" target="blank">android培训</a>、<a href="http://edu.csdn.net/heima" target="blank">java培训</a>、期待与您交流! ----------------------
详细请查看:<a href="http://edu.csdn.net/heima" target="blank">http://edu.csdn.net/heima</a>
- 黑马程序员_运算符及进位转换
- 黑马程序员_数据类型及运算符
- 黑马程序员_02_运算符_进制转换
- 黑马程序员_运算符
- 02黑马程序员_算数运算,类型转换
- 黑马程序员_重载运算符
- 黑马程序员_Java基础_进制转换、基本数据类型、运算符、流程控制语句等
- 黑马程序员_位运算
- [黑马程序员]_自加自减及复合运算符及关系运算符和逻辑运算符小结
- [黑马程序员]_自加自减及复合运算符及关系运算符和逻辑运算符小结
- 黑马程序员_二、java基础语法(常量、变量、进制及运算符)
- 黑马程序员 JAVA基本知识(环境变量、进制转换) 及函数声明、赋值、运算符
- 黑马程序员_类型转换
- 黑马程序员_里氏转换
- 黑马程序员_里氏转换
- 黑马程序员_Java基础_常用基础内容(进制转换、基本数据类型、运算符、流程控制语句等)
- 黑马程序员_关于C#中的位运算符
- 黑马程序员_位运算符的用法
- Jquery的简介及由来
- java高手释疑:package 与 import
- 从源码理解spring事务(1)
- ping广播地址个系统的反应
- Style.xml源码
- 黑马程序员_运算符及进位转换
- 《第五周实验报告1-3》---增加构造函数,使对象在定义时能够进行初始化
- Failed to build gem native extension
- nutch1.2 eclipse tomcat6.0 配置
- 赚钱不能莫良心,苍天有眼都在看 -----至张玮
- 祝贺自己加入csdn大家庭:D
- C# 读写XML文件
- jquery基础
- xmlns