20145312 《Java程序设计》第2周学习总结

20145312 《Java程序设计》第2周学习总结

教材学习内容总结

1.1类型、变量与运算符
1.1.1类型
1.基本类型
整数:short(2字节)、long(8字节)、int(4字节);
字节:byte(图像处理、编码处理),表示-128~127的整数;
浮点数:float(4字节)、double(8字节);
字符:char储存字符符号,每个字符类型占2字节;
布尔:boolean类型可表示true与false。
代码如下:

public class Leixing
   {
    public static void main (String[] args)
   {
    //byte、short、int、long范围
    System.out.printf("%d ~ %d%n",Byte.MIN_VALUE,Byte.MAX_VALUE);
    System.out.printf("%d ~ %d%n",Short.MIN_VALUE,Short.MAX_VALUE);
    System.out.printf("%d ~ %d%n",Integer.MIN_VALUE,Integer.MAX_VALUE);
    System.out.printf("%d ~ %d%n",Long.MIN_VALUE,Long.MAX_VALUE);
   
    //float、double精度范围
    System.out.printf("%d ~ %d%n",Float.MIN_EXPONENT,Float.MAX_EXPONENT);
    System.out.printf("%d ~ %d%n",Double.MIN_EXPONENT,Double.MAX_EXPONENT);
   
    //char可表示的Unicode范围
    System.out.printf("%h ~ %h%n",Character.MIN_VALUE,Character.MAX_VALUE);
   
    //boolean的两个值
    System.out.printf("%b ~ %b%n",Boolean.TRUE,Boolean.FALSE);
    }
    }

结果截图:

2.常用格式控制符号
%d:十进制整数格式输出;
%f:十进制浮点格式输出;
%x,%X:十六进制格式输出;
%s,%S:字符串格式符号;
\n:换行符号。

1.1.2变量
1.基本规则
使用变量名int,short,long,float,double,char,boolean等声明何种类型的变量;
命名规则:int xxxYyyZzz;如:int ageOfStudent;

2.字面常量
int number1 = 12; //十进制表示;
int number2 = 0xC; //十六进制,以0x开头;
int number3 = 014; //八进制,以0开头;
double number1 = 0.00123;
double number2 = 1.23e-3(可使用科学记号);
char size = ‘S’;
char lastName = ‘林’;
boolean flag = true;
Boolean condition = false;

3.常用忽略符号
\’\”:单双引号;
\b:倒退一个字符;
\f:换页;
\n:换行;
\r:光标移至行首;
\t:制表符,相当于Tab;

1.1.3运算符
1.算术运算:+、-、*、/,先乘除后加减。

2.比较、条件运算
大于(>)、小于(<)、不小于(>=)、不大于(<=)、等于(==)、不等于(!=)。

代码如下:

public class Yunsf
{
public static void main(String[] args){
System.out.printf("10 > 5 结果 %b%n", 10 > 5);
System.out.printf("10 >= 5 结果 %b%n", 10 >= 5);
System.out.printf("10 < 5 结果 %b%n", 10 < 5);
System.out.printf("10 <= 5 结果 %b%n", 10 <= 5);
System.out.printf("10 == 5 结果 %b%n", 10 == 5);
System.out.printf("10 != 5 结果 %b%n", 10 != 5);
}
}

结果截图:

3.逻辑运算符:&&(且)、 ||(或)、!(反相)
代码如下:

public class Luojiys
{
public static void main(String[] args)
{
int num=75;
System.out.println(num > 70 && num < 80);
System.out.println(num > 80 || num < 75);
System.out.println(!(num > 80 || num < 75));
}
}

结果截图:

4.位运算
AND(&)、OR(|)、XOR(^)、补码(~)、左移(<<)、右移(>>)。
位运算是逐位运算,补码运算是将所有位0变1、1变0。
代码如下:

public class Weiys
{             
      public static void main(String[] args)
{
System.out.println("AND 运算:");
System.out.printf("0 AND 0 %5d%n", 0&0);
System.out.printf("0 AND 1 %5d%n", 0&1);
System.out.printf("1 AND 0 %5d%n", 1&0);
System.out.printf("1 AND 1 %5d%n", 1&1);

System.out.println("\nOR 运算:");
System.out.printf("0 OR 0 %6d%n", 0|0);
System.out.printf("0 OR 1 %6d%n", 0|1);
System.out.printf("1 OR 0 %6d%n", 1|0);
System.out.printf("1 OR 1 %6d%n", 1|1);

System.out.println("\nXOR 运算:");
System.out.printf("0 XOR 0 %5d%n", 0^0);
System.out.printf("0 XOR 1 %5d%n", 0^1);
System.out.printf("1 XOR 0 %5d%n", 1^0);
System.out.printf("1 XOR 1 %5d%n", 1^1);
}
}

结果截图:

5.递增递减运算
Int i=0;
System.out.println(i++);
System.out.println(i--);

6.指定运算
a+=b a=a+b;
a =b a=ab;
a&=b a=a&b;
以此类推。

1.2 流程控制

1、if…else条件式:if语句有三种格式:

(1)

if(条件表达式) {
执行语句; }
(2)

if(条件表达式) {
执行语句; }
else {
执行语句; }
(3)

if(条件表达式) {
执行语句; }
else if (条件表达式) {
执行语句; } ……
else { 执行语句; }
用if...else判断数字为奇数或偶数代码如下:

public class Panduanjiou
{
       public static void main(String[] args)
   {
       int input = 10; 
       int remain = input % 2;
       if(remain == 1)
     {
       System.out.printf("%d 为奇数%n", input);
      }
else
     {
System.out.printf("%d 为偶数%n", input);
     }
    }
}

结果截图:

2、switch条件式:格式如下

switch(表达式) {
case 取值1:
执行语句;
break;
case 取值2:
执行语句;
break;
…...
default: 执行语句;
break; }
用switch语句处理学生成绩等级代码如下:

public class Xueshengcj
{
      public static void main(String[] args)
{
             int score = 88; 
             int q = score / 10;
             char level;
    switch(q)
   {
    case 10:
    case 9:
        level = 'A';
        break;
    case 8:
        level = 'B';
        break;
    case 7:
        level = 'C';
        break;
    case 6:
        level = 'D';
        break;
    default:
        level = 'E';

    }
System.out.printf("得分等级:%c%n", level);

}
}

结果截图:

3、for循环:格式如下

for(初始化表达式;循环条件表达式;循环后的操作表达式) {
执行语句;
}
for循环显示九九乘法表代码如下:

public class Demo
{
       public static void main(String[] args)
{
for(int j=1; j < 10; j++)
   {
    for(int i=2; i < 10; i++)
    {
    System.out.printf("%d*%d=%2d  ", i,j,i*j);
    }
System.out.println();
   }
}
}

结果截图:

4、while循环:

  • while语句格式:
    while(条件表达式) {
    执行语句;
    }
    do while语句格式:
    do { 执行语句;
    }
    while(条件表达式);
    do while特点是条件无论是否满足, 循环体至少被执行一次。

5、break(跳出)、continue(继续)
break语句:应用于选择结构和循环结构。
continue语句:应用于循环结构。

教材学习中的问题和解决过程

一开始不明白书上说的类型转换是什么意思,后来观看视频后知道了因为每种变量的占字节数不一样,所以赋值时,低字节的会自动升为高字节,输出时就会显示超出精度,所以要强制转换类型。

代码调试中的问题和解决过程

错误如下:

改正后:

错误如下:

改正后

其他(感悟、思考等,可选)

书上的知识讲解较为抽象,但详细精确,视频容易理解但比较简略,所以两个要结合起来学习。书上的案例要亲自实践一下才能印象深刻。现在我基本能够掌握Java的学习步骤,还要再勤加练习。

学习进度条

参考资料

Java学习笔记(第8版)
《Java学习笔记(第8版)》学习指导

posted @ 2016-03-13 23:35  20145312袁心  阅读(168)  评论(2编辑  收藏  举报