JAVA心德与每日笔记

来源:互联网 发布:php各类接口开发 编辑:程序博客网 时间:2024/03/29 04:13

2015年12月17日

今天开始了第一天学习JAVA,进行第一次编译“HelloWorld”遇到了一些问题。

/** *Description:HelloWorld程序<p> *Create Date:2015-12-17<p> *Author:GuoFeng<p> *Modified Date:2015-12-17<p> *Modified By:Guo<p> */public class HelloWorld{/** *Description:这是程序的入口点<p> *参数:字符串数组<p>*/public static void main(String []args){//打印输出到控制台System.out.println("HelloWorld");System.out.print("HelloWorld<p>");System.out.print("Hello\tWorld");//System.out.print("Hello\tWorld");}/** *Description:显示输出个人信息 *@return String 姓名 *@param content 个人资料 **/public String toString(String content){}}

=================================================================

JavaDoc支持HTML代码与标记@。

  @author 作者名

  @version 版本标识

  @parameter 参数及其意义

  @since 最早使用该方法/类/接口的JDK版本

  @return 返回值

  @throws 异常类及抛出条件

  @deprecated 引起不推荐使用的警告

  @see reference

  @override 重写

=================================================================

警告1:<p>标记为空

处理方法:

错误1:编码GBK的不可映射字符

处理方法:将JAVA文件用记事本打开,再另存为时,编码处选择ANSI.

错误2:不允许使用自关闭元素

处理方法:将<br/>换为<p>

错误3:缺少返回语句

处理方法:

=================================================================

public class VarDemo{public static void main(String []args){//先声明后赋值int number1;number1=1;System.out.println(number1);//声明的同时做初始化int number2=2;System.out.println(number2);//方法中所声明的变量必须初始化以后才能使用//int number3;//System.out.println(number3);//同时声明多个变量//int number4,number5,number6=4;//number4和number5没有初始值只有number6有初始值//System.out.println(number4);//System.out.println(number5);//System.out.println(number6);//用连等号尝试会提示找不到符号//int number7=number8=number9=5;//System.out.println(number7);//System.out.println(number8);//System.out.println(number9);int number10=6,number11=7,number12=8;System.out.println(number10);System.out.println(number11);System.out.println(number12);//不能声明同名变量//int number12=9;//System.out.println(number12);//关键字不能作为变量名//int final=10;//System.out.println(final);//变量名是区分大小写的int myScore=11;int myscore=12;System.out.println(myScore);System.out.println(myscore);//变量是可变的int myScore1=13;int myscore2=14;myScore1=15;System.out.println(myScore1);System.out.println(myscore2);}}

=================================================================

JAVA中基本数据类型的取值范围

数据类型布尔型:关键字boolean:在内存中占用字节数1个字节(8位):取值范围true,false:默认值false;

数据类型字节型:关键字byte:在内存中占用字节数1字节(8位):取值范围-128~127:默认值0;

数据类型字符型:关键字char:在内存中占用字节数2字节(16位):取值范围0~65535:默认值‘\u0000’;

数据类型短整型:关键字short:在内存中占用字节数2字节(16位):取值范围-32768~32767:默认值0;

数据类型整型:关键字int:在内存中占用字节数4字节(32位):取值范围-2^31~2^31-1:默认值0;

数据类型长整型:关键字long:在内存中占用字节数8字节(64位):取值范围-2^63~2^63-1:默认值0;

数据类型单精度浮点型:关键字float:在内存中占用字节数4字节(32位):取值范围1.4013E-45~3.4028E+38:默认值0.0F;

数据类型双精度浮点型:关键字double:在内存中占用字节数8字节(64位):取值范围4.9E-324~1.7977E+308:默认值0.0D;

=================================================================

十进制转换为二进制:105.625=1101001.101

整数部分:105/2=52余1,52/2=26余0 ,26/2=13余0,13/2=6余1,6/2=3余0,3/2=1余1,1/2=0余1

小数部分:0.625*2=1.25取1,0.25*2=0.5取0,0.5*2=1取1

=================================================================

二进制转换为十进制:1101.101=13.625

整数部分:1*2^3+1*2^2+0*2^1+1*2^0=8+4+1=13

小数部分:1*2^-1+0*2^-2+1*2^-3=0.5+0.125=0.625

整数加小数13.625

=================================================================

十六进制转换为二进制:3A6.B8=1110100110.10111

整数部分:3A6=0011  1010  0110

小数部分:B8=1011  1000

=================================================================

二进制转换为十六进制:1011101001.110101B=2E9.D4

整数部分:0010    1110    1001 =2E9

小数部分:1101    0100 =D4

=================================================================

八进制转换为二进制:73.16=111011.001110

整数部分:73=111  011

小数部分:16=001  110

=================================================================

二进制转换为八进制:01101010001.100101010=1521.452

整数部分:  01  101  010  001 =1521

小数部分: 100  101  010 =452

=================================================================

2015年12月20日:

public class DataDemo1{public static void main(String [] args){byte age=127;System.out.println(age);//超出最大范围值//byte age=128;//System.out.println(age);//类型不兼容//byte age=ture;//System.out.println(age);short number1=32767;int number2=100;long number3=2000L;System.out.println(number1);System.out.println(number2);System.out.println(number3);//浮点数测试float data1=10.5F;double data2=10.456;double data3=0.123;double data4=0.3456e3;System.out.println(data1);System.out.println(data2);System.out.println(data3);System.out.println(data4);//boolean类型测试boolean flag=true;//flag=1;//数据类型不一致System.out.println(flag);//字符型,必须用单引号括起来char c1='A';//在JAVA中字符char类型使用的是Unicode字符编码char c2='\u0041';char c3=65;System.out.println(c1);System.out.println(c2);System.out.println(c3);}}

public class DataDemo2{public static void main(String [] args){//自动类型转换(隐式转换)(小转大)byte num1=10;int num2=num1;System.out.println(num2);long num3=num2;System.out.println(num3);float f=10.5f;double d=f;System.out.println(f);System.out.println(d);int num4=100;float num5=num4;System.out.println(num5);//字符赋值给整型变量char c='a';int num6=c;System.out.println(c);System.out.println(num6);System.out.println(c+6);//强制类型转换(大转小)int num7=20;short num8=(short)num7;System.out.println(num8);float f1=65.625f;char c1=(char)f1;System.out.println(f1);System.out.println(c1);float f2=(float)10.22;System.out.println(f2);int num10=65;char num11=(char)num10;System.out.println(num11);int num12=4;double num13=2.6;double res=num12+num13;System.out.println(res);int num14=4;double num15=2.6;int res1=num14+(int)num15;System.out.println(res1);//总结byte<short(char)<int<long<float<double}}

=================================================================

//字符串加任何数据类型都是字符串连接(算数运算符)

运算符(+)说明(数学加运算)计算(X=5+5)结果(10)

运算符+说明(字符串连接)计算(X="AA"+"BB")结果(AABB)

运算符-说明(数学减运算)计算(X=5-5)结果(0)

运算符-说明(取负数)计算(Y=5;X=-Y)结果(-5)

运算符*说明(数学乘运算)计算(X=5*5)结果(25)

运算符/说明(数学除运算)计算(X=5/2)结果(2)

运算符%说明(数学余运算)计算(X=5%2)结果(1)

运算符++说明(数学自增运算)计算(X=3;X++)结果(4)

运算符--说明(数学自减运算)计算(X=2;X--)结果(1)

=================================================================

复合赋值运算符:(假设X=10)

运算符+=表达式X+=5计算X=X+5结果15

运算符-=表达式X-=5计算X=X-5结果5

运算符*=表达式X*=5计算X=X*5结果20

运算符/=表达式X/=5计算X=X/5结果2

运算符%=表达式X%=5计算X=X%5结果0

================================================================

关系运算符:

运算符(==)说明(相等于)计算(1==1)结果(true)

运算符(!=)说明不等于计算(1!=1)结果(false)

运算符(>)说明大于计算(1>2)结果(false)

运算符(<)说明小于计算(1<2)结果(true)

运算符(>=)说明大于等于计算(1>=2)结果(false)

运算符(<=)说明小于等于计算(1<=2)结果(true)

=================================================================

public class OperatorDemo1{public static void main(String [] args){int num1=10;int num2=8;int res=num1+num2;System.out.println(res);String str="操作结果:";//引用数据类型System.out.println(str+res);//字符串连接System.out.println(str+res+10);//字符串连接System.out.println(str+(res+10));//字符串连接System.out.println(str+res+10.5);//字符串连接System.out.println(str+res+'男');//字符串连接System.out.println(str+res+true);//字符串连接System.out.println(res+10+str);//字符串连接//System.out.println(str+num1-num2);//错误System.out.println(str+(num1-num2));System.out.println(str+num1*num2);System.out.println(str+(num1*num2));System.out.println(str+num1/num2);System.out.println(str+(num1/num2));System.out.println(str+num1%num2);System.out.println(str+(num1%num2));//当单独使用++时候,不管++在前后,都是自身加一.num1++;//num1=num1+1;System.out.println(str+num1);++num2;System.out.println(str+num2);num1--;System.out.println(str+num1);--num2;System.out.println(str+num2);//赋值运算符//当有赋值运算符的时候,++在后面,那么会先赋值然后再做自身加一运算.int data=num1++;//int data=num1;num1++;System.out.println(data);System.out.println(str+data+",num1="+num1);//当有赋值运算符的时候,++在前面,那么会先做自身加一运算然后再赋值.int data1=++num1;//num1++;int data=num1;System.out.println(str+data1+",num1="+num1);num2+=2;//num2=num2+2;System.out.println("num2="+num2);short s=5;//s=s+3;//会把s赋值为整型s+=3;//s+=3;//会在原来数值上加三System.out.println("s="+s);//关系运算符System.out.println(num1==num2);System.out.println(num1!=num2);System.out.println(num1>=num2);System.out.println(num1<=num2);}}

=================================================================

2015年12月28日

逻辑运算符:

运算符(&)说明(短路与)表达式(条件1&条件2)描述(仅仅两个条件同时为真,结果为真,若1为假,则不判断2)

运算符(||)说明(短路或)表达式(条件1||条件2描述(只要两个条件有一个为真,结果为真,若1为真,不判断2)

运算符(!)说明(非)表达式(!条件)描述(条件为真时,结果为假;条件为假时,结果为真)

运算符(&)说明(与)表达式(条件1&条件2描述(仅仅两个条件同时为真,结果为真,若1为假,则2还需判断)

运算符(!)说明(或)表达式(条件1!条件2描述(只要两个条件有一个为真,结果为真,若1为真,2还需判断)

运算符(^)说明(异或)表达式(条件1^条件2描述(当一个为真,一个为假时,结果为真)

public class OperatorDemo2{public static void main(String []args){int num1=10;int num2=8;int num3=5;boolean res=false;System.out.println((num1>num2)&&(num2>num3));System.out.println((num1<num2)&&(num2>num3));System.out.println((num1<num2)&&(res=num2>num3));//短路与,条件1不成立,条件2就不会执行System.out.println(res);System.out.println((num1<num2)||(num2>num3));System.out.println((num1>num2)||(res=num2>num3));//短路或System.out.println(res);System.out.println(!(num1>num2));System.out.println(!(num1<num2));//逻辑非System.out.println((num1<num2)&(res=num2>num3));//逻辑与,不管前面表达式为真假,后面都会运行System.out.println(res);System.out.println((num1>num2)|(res=num2<num3));//逻辑或,不管前面表达式为真假,后面都会运行System.out.println(res);System.out.println((num1>num2)^(num2>num3));//逻辑异或,两个条件中一个真一个假才会为真System.out.println((num1>num2)^(num2<num3));}}

=================================================================

位运算符:位运算符是对二进制的直接运算

运算符(&)说明(与运算)

运算符(!)说明(或运算)

运算符(^)说明(异或运算)

运算符(~)说明(非运算)

运算符(<<)说明(左移)

运算符(>>)说明(右移)

运算符(>>>)说明(无符号右移)


1 0
原创粉丝点击