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版)》学习指导

20145312 《Java程序设计》第2周学习总结的更多相关文章

  1. 20145312 《Java程序设计》第九周学习总结

    20145312 <Java程序设计>第九周学习总结 学习笔记 Chapter 16整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 SUN公司为了简化.统一对数据库的操作, ...

  2. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  3. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  4. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  5. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  6. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  7. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  8. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  9. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

  10. 《Java程序设计》第九周学习总结

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

随机推荐

  1. div img span 垂直居中问题

    div设置height,line-height影响块元素内的文本垂直居中,块下的a,img,span等行内元素是没能垂直居中,用了vertical-align:middle;可以处理div等块级元素下 ...

  2. 02.ZooKeeper的Java客户端使用

    1.ZooKeeper常用客户端比较 1.ZooKeeper常用客户端     zookeeper的常用客户端有3种,分别是:zookeeper原生的.Apache Curator.开源的zkclie ...

  3. 160614、Eclipse下JRebel6.2.0热部署插件安装、破解及配置

    标签: 这两天在做后台管理系统,前端框架用Bootstrap,后端用SpringMVC+Velocity.在开发过程中,经常需要对界面进行微调,调整传参等,每次更改一次java代码,就得重新部署一次, ...

  4. 自动生成项目的Makefile文件

    自动生成项目的Makefile文件 理论基础 跟我一起写 Makefile:   http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=4 ...

  5. 用Python构建你自己的推荐系统

    用Python构建你自己的推荐系统 现如今,网站用推荐系统为你提供个性化的体验,告诉你买啥,吃啥甚至你应该和谁交朋友.尽管每个人口味不同,但大体都适用这个套路.人们倾向于喜欢那些与自己喜欢的其他东西相 ...

  6. CentOS7系统基本操作

    查看网卡命令 [root@localhost ~]# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state ...

  7. Python中的高级数据结构(转)

    add by zhj: Python中的高级数据结构 数据结构 数据结构的概念很好理解,就是用来将数据组织在一起的结构.换句话说,数据结构是用来存储一系列关联数据的东西.在Python中有四种内建的数 ...

  8. Python高级特性(2):Closures、Decorators和functools(转)

    原文:Python高级特性(2):Closures.Decorators和functools 装饰器(Decorators) 装饰器是这样一种设计模式:如果一个类希望添加其他类的一些功能,而不希望通过 ...

  9. .Net站点架构设计(八)測试

    .Net站点架构时间(八)測试 一般而言.总体測试策略是:先针对部分系统进行性能及压力測试,得到各部分的峰值处理性能:再模拟总体流程測试,此时倒不用依照峰值跑,重点測试总体业务流程及业务预期负荷. 在 ...

  10. mysql监控优化(三)慢查询

    顾名思义,慢查询日志中记录的是执行时间较长的query,也就是我们常说的slowquery,通过设--log-slow-queries[=file_name]来打开该功能并设置记录位置和文件名.慢查询 ...