20165228 2017-2018-2 《Java程序设计》第2周学习总结
20165228 2017-2018-2 《Java程序设计》第2周学习总结
教材学习内容总结
- 标识符:名字
组成:字母/下划线/美元符号或数字
注意:标识符的第一个字符不能是数字字符,且标识符不能是Java关键字以及ture、false和null - Unicode字符集
- 关键字:有特殊用途,例如int、double、float、class
基本数据类型: - 逻辑类型:boolean(只有true或者false)
- 整数类型:byte、short、int、long
其区别:取值范围不同,占有内存空间不同。
byte -128~+127 1字节
short
int
long 8字节 - 字符类型:char
赋值:char c = ‘ XX ’ ; XX需要时unidode字符集里的字符
转化:(int)‘c’ 指的是将字符c转化为int类型表示
转义:“\u+地址(16进制)”表示位置上的字符
浮点类型:float(8位有效)、double(16位有效)
赋值:float m =12.123456f;
double n =12.12345678901234;
注意:精度从低到高的排序是:byte、short、char、int、long、float、double
低精度赋值给高精度时需要转化,高精度赋值给低精度时则不用,但会损失精度
具体程序中的java:
System.out.println("汉字:"+chinaWord+"的位置:"+(int)chinaWord);
“+”表示首尾相接,输出的结果为“汉字:X的位置:xxxx”
- 输入
步骤(1)创建一个Scanner对象
Scanner reader = new Scanner(System.in);
步骤(2)Scanner对象调用方法读取用户键盘输入的数据(等待用户键盘输入)
int m =reader.nextInt();
红标的字类型应一致
- 输出
System.out.println();
System.out.printf("格式",值列表)
-数组:一些类型相同的变量组成的集合
声明数组:
类型 [] 数组名;
或
类型 数组名[]
例:int [] a
创建数组:
数组名 = new 类型[整值];
a = new int [5]
计算一维数组长度(对二维数组使用该命令时显示的是一维数组的个数):
数字名.length
-数组的初始化
一维数组的初始化:
int [] 数组名 ={a,b,c,...};
二维数组的初始化:
int [] [] 数组名 ={ {...}, {...}, {...}, {...}};
在数组生成的同时就已初始化
-数组的引用
即数组本身存放的值
两个类型相同的数组,一旦二者具有相同的引用,那么二者就具有一样的单元
- 运算符与表达式
如果表达式中有双精度浮点数(double型数据),则按双精度进行运算
如果表达式中最高精度是单精度浮点数(float型数据),则按单精度进行运算
如果表达式中最高精度是long型整数,则按long精度进行运算
如果表达式中最高精度低于int型整数,则按int精度进行运算
Java允许把不超过byte,short和char的取值范围的算术表达式的值赋给byte,short和char型变量
通过变量给另一变量赋值时例如x = m + 'a';应写成
x = (byte)(m + 'a');
instanceof运算符: 类+对象
对象+instanceof+类
检验对象是不是该类,若是则输出ture,若不是则输出false
-语句概述
方法调用语句:例如System.out.println("Hello");
表达式语句:由一个表达式构成一个语句,即表达式尾加上分号
复合语句:可以用{ }把一些语句复合起来构成复合语句
空语句:一个分号则是一跳空语句
控制语句:控制语句分为条件分支语句、开关语句和循环语句
package语句和inport语句:与类、对象有关
- 条件分支语句
if(条件表达式) {
//if操作
}
if(条件表达式) {
//if操作
}
else {
//if操作
}
if(条件表达式) {
//if操作
}
else if(条件表达式){
//else if操作
}
- switch开关语句(单条件多分支)
switch(表达式){
case 常量值1:
若干个语句
break;
case 常量值2:
若干个语句
break;
case 常量值n:
若干个语句
break;
default:若干语句
- 循环语句
while (表达式) {
//循环体
}
- break和continue语句
break和continue使用在循环体中。
break:运行到break时立刻结束整个循环语句
循环体运行到满足表达式为止
continue:运行到continue直接跳出本次循环,进入到下一一次循环中 - 数组与for语句
传统方式:
for(int n=0;n<a.length;n++) {
System.out.print(a[n]+ " ");
}
System.out.println();
for(int i:a) {
System.out.print(i+" ");
}
for(声明循环变量:数组的名字) {
...
}
教材学习中的问题和解决过程
- 问题1:高精度变量赋值给低精度变量为什么可能会损失精度?
- 问题1解决方案:高精度变量能够赋值的数更多,当其值将大于低精度最大可存储数值时,低精度变量储存的值其实是循环值
- 问题2:为什么1.5f与1.5不相等?
- 问题2解决方案:1.5是double型数据,而1.5f是float型数据,1.5与1.5f仅前面float型数据的位数相等,后面的double型比float型数据高的精度就不等了
代码调试中的问题和解决过程
- 问题1:在编译某个程序时,提示“错误:需要class,interface或enum”
- 问题1解决方案:检查程序时发现把"{"输成了中文符号"{"导致调试失败
代码托管
本周我调整了代码的文件夹,根据不同单元和另外找的代码分到不同文件夹里,所以本周的代码数应为统计的代码数459减去上周的235,本周实际敲的代码总行数为224.
(statistics.sh脚本的运行结果截图)
上周考试错题总结
- 错题及原因,理解情况
错题:带包的代码编译运行测试
原因:敲代码的时候出错,然后一直编译失败。当时没有检查出原因
理解情况:已经掌握带包的代码编译及运行
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 25篇 | 400小时 | |
第一周 | 235/235 | 1/1 | 15/15 | |
第二周 | 224/459 | 2/3 | 15/30 |
20165228 2017-2018-2 《Java程序设计》第2周学习总结的更多相关文章
- 学号 20175212 《Java程序设计》第九周学习总结
学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145213《Java程序设计》第一周学习总结
20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145330孙文馨 《Java程序设计》第一周学习总结
20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
- 20145337 《Java程序设计》第九周学习总结
20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...
- 20145337 《Java程序设计》第二周学习总结
20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...
- 20145218《Java程序设计》第一周学习总结
20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...
- 《Java程序设计》第九周学习总结
20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...
随机推荐
- [contest 781] 9.6
[contest 781] 9.6 - XJOI czx的温暖题... T1 军训
- [CodeForces - 614A] A - Link/Cut Tree
A - Link/Cut Tree Programmer Rostislav got seriously interested in the Link/Cut Tree data structure, ...
- 设计模式之单例模式-C++
单例模式也称单子模式.单件模式,通过单例模式可以保证系统中只有一个类只有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享 对于系统中的某些类来说,只有一个实例很重要,比如一个打印机可以 ...
- Oracle物理DG自动切换——Dataguard Broker配置
1.前言部分 1.1 导读 各位技术爱好者,看完本文后,你可以掌握如下的技能: ① Data Guard Broker 的配置 ② Fast-Start Failover 的配置 ③ Oracle D ...
- Oracle使用expdp/impdp导出导入数据
这里假设已存在数据库用户,并是计划通过该用户导入导出该用户表空间上的数据.(我们这里假定用户名称为ls) 1.创建逻辑目录(数据库命令,sqlplus中执行) Oracle不能直接指定系统目录让他去读 ...
- 包--json 与 pickle 模块
一. 包 一个含有__init__.py 文件的文件夹(将py 文件中的内容划分成不同的部分放在不同的py 文件中,在将这些py 文件放在一个文件夹中) 是模块,不做执行文件,仅做调用 m1.py 和 ...
- Windows Server 2016与旧版本系统比较
一.性能和可扩性 特征描述 Windows Server 2012/2012 R2 标准版和数据中心 Windows Server 2016 标准版和数据中心 物理内存(主机)支持 每个物理服务器至多 ...
- xshell提示必须安装最新的更新
今天大家的xshell基本都出了这个问题 调整时间,调整到比较前的时间,打开xshell即可. 然后工具->选项 把更新去了
- java 实现简单链式队列
package com.my; /** * 链式队列 * @author wanjn * */ public class LinkedQueue { private Node head; privat ...
- base64加密解密c++代码
关于base64加密解密代码: 程序运行功能请自行查看main函数: #include <stdio.h> #include <string.h> #include <a ...