20145120 《Java程序设计》第3周学习总结
20145120 《Java程序设计》第3周学习总结
教材学习内容总结
基本类型与类类型的概念
在java里使用数组和字符串
封装的概念
在java定义函数
重载的概念
static的概念
因为程序很多所以我截取部分
猜数字
public class Guess {
public static void main(String[] args) {
Scanner console = new Scanner(System.in);
int number = (int) (Math.random() * 10);
int guess;
do {
System.out.print("猜数字(0 ~ 9):");
guess = console.nextInt();
} while(guess != number);
System.out.println("猜中了XD");
}
}

使用BigDecimal
import java.math.BigDecimal;
public class DecumalDemo {
public static void main(String[] args) {
BigDecimal operand1 = new BigDecimal("1.0");
BigDecimal operand2 = new BigDecimal("0.8");
BigDecimal result = operand1.subtract(operand2);
System.out.println(result);
BigDecimal op1 = new BigDecimal("0.1");
BigDecimal op2 = new BigDecimal("0.1");
BigDecimal op3 = new BigDecimal("0.1");
BigDecimal result2 = new BigDecimal("0.3");
if(op1.add(op2).add(op3).equals(result2)) {
System.out.println("等于 0.3");
}
else {
System.out.println("不等于 0.3");
}
}
}

基本类型打包
public class IntegerDemo {
public static void main(String[] args) {
int data1 = 10;
int data2 = 20;
Integer wrapper1 = new Integer(data1);
Integer wrapper2 = new Integer(data2);
System.out.println(data1 / 3);
System.out.println(wrapper1.doubleValue() / 3);
System.out.println(wrapper1.compareTo(wrapper2));
}
}

数组复制
class Clothes {
String color;
char size;
Clothes(String color, char size) {
this.color = color;
this.size = size;
}
}
public class Copy {
public static void main(String[] args) {
Clothes[] c1 = {new Clothes("red", 'L'), new Clothes("blue", 'M')};
Clothes[] c2 = new Clothes[c1.length];
for(int i = 0; i < c1.length; i++) {
c2[i] = c1[i];
}
c1[0].color = "yellow";
System.out.println(c2[0].color); //浅层复制的结果
Clothes[] c3 = {new Clothes("red", 'L'), new Clothes("blue", 'M')};
Clothes[] c4 = new Clothes[c3.length];
for(int i = 0; i < c3.length; i++) {
Clothes c = new Clothes(c3[i].color, c3[i].size);
c4[i] = c;
}
c3[0].color = "yellow";
System.out.println(c4[0].color); //深层复制的结果
}
}

1到100
public class OneTo100 {
public static void main(String[] args) {
StringBuilder oneTo100 = new StringBuilder();
for (int i = 1; i < 100; i++) {
oneTo100.append(i).append('+');
}
System.out.println(oneTo100.append(100).toString());
}
}

储蓄
import java.util.Scanner;
class CashCard {
private String number;
private int balance;
private int bonus;
CashCard(String number, int balance, int bonus) {
this.number = number;
this.balance = balance;
this.bonus = bonus;
}
void store(int money) {
if(money > 0) {
this.balance += money;
if(money >= 1000) {
this.bonus++;
}
}
else {
System.out.println("储值是负的?你是来捣乱的吗?");
}
}
void charge(int money) {
if(money > 0) {
if(money <= this.balance) {
this.balance -= money;
}
else {
System.out.println("钱不够啦!");
}
}
else {
System.out.println("扣负数?这不是让我储值吗?");
}
}
int exchange(int bonus) {
if(bonus > 0) {
this.bonus -= bonus;
}
return this.bonus;
}
int getBalance() {
return balance;
}
int getBonus() {
return bonus;
}
String getNumber() {
return number;
}
}
public class CardApp {
public static void main(String[] args) {
Scanner console = new Scanner(System.in);
CashCard card1 = new CashCard("A001", 500, 0);
card1.store(console.nextInt());
CashCard card2 = new CashCard("A002", 300, 0);
card2.store(console.nextInt());
CashCard card3 = new CashCard("A003", 1000, 1);
card3.store(console.nextInt());
System.out.printf("明细 (%s, %d, %d)%n",
card1.getNumber(), card1.getBalance(), card1.getBonus());
System.out.printf("明细 (%s, %d, %d)%n",
card2.getNumber(), card2.getBalance(), card2.getBonus());
System.out.printf("明细 (%s, %d, %d)%n",
card3.getNumber(), card3.getBalance(), card3.getBonus());
}
}

教材学习中的问题和解决过程
不太理解为什么要进行基本类型打包,基本类型打包有什么作用?
这周我将NetBaens换成了IDEA,
对1到100那个程序的运行结果截图的时候因为结果太长,很难截图,感觉应该是有结果自动换行功能的,找了一下,发现了应该是自动换行按钮的东西

还有显示代码行数的功能

等等
代码调试中的问题和解决过程
都是在抄书,所以没问题。
其他(感悟、思考等,可选)
感觉本周的学习难度明显上升了,有很多新概念出现,例如对象、参考等概念感觉理解起来就很麻烦,很难把这些概念固定在印象里。
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 1000行 | 16篇 | 300小时 | |
| 第一周 | 20/1000 | 1/16 | 8/300 | |
| 第二周 | 71/1000 | 2/16 | 17/300 | |
| 第三周 | 320/1000 | 3/16 | 30/300 |
参考资料
20145120 《Java程序设计》第3周学习总结的更多相关文章
- 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入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...
- 《Java程序设计》第二周学习总结
20145224陈颢文<Java程序设计>第二周学习总结 教材学习内容总结 一.类型.变量与运算符 1.类型 整数: 可细分为为short整数(占2字节),int整数(占4字节),long ...
随机推荐
- jquery 触发a链接点击事件
jquery 触发a链接点击事件 <p class="btnSubmit"><a href="javascript:submitData();" ...
- OpenShare新功能@2014年10月
新功能@ Oct,2014 增强“应用中心”(就是“企业应用门户”功能):在Dock上增加“应用中心”图标,使得用户无论在任何页面,任何位置,永远都是点击一下即可进入任一企业应用,而无需回退到门户主页 ...
- 【CSS3】---:before :after生成内容
在Web中插入内容,在CSS2.1时代依靠的是JavaScript来实现.但进入CSS3进代之后我们可以通过CSS3的伪类“:before”,“:after”和CSS3的伪元素“::before”.“ ...
- js如何检测打开窗口是否存在的三个方法?
js打开窗口一般也就是使用window.open方法: win = window.open(CHILD_WINDOW_URL, CHILD_WINDOW_NAME, CHILD_WINDOW_ATTR ...
- [Bootstrap]组件(一)
Glyphicons字体图标 基类.glyphicon {position/top/display/font-family/} 具体类 {content} --表现在伪元素上 使用要点:a.基类 ...
- 【风马一族_windom】 批量修改相同文件类型的后缀
难题:有时因为某种原因,修改一堆文件的类型,重复操作次数多,浪费时间也跟着多,收获也会相当少. 提问:对于软件而言,可量化的,有规律的操作,可以使用程序来进行替代. 特性:在微软操作系统上,不同后缀的 ...
- 《DDNS服务器的搭建和案例解决方法》
DDNS原理:DNS + DHCP =DDNS DHCP负责ip解析,和分配给客户机ip,ip为随机数. DNS负责域名解析,A记录里记录了每个ip对应的域名. 客户端ip肯定是变化的,不可能一直使用 ...
- YCM的安装与配置
花了好几天的时间,总算把YCM装上了.期间遇到了各种问题,主要还是因为刚进linux,对linux环境不熟, 命令资料等查了半天.当然,YCM也普遍被认为是一种安装配置复杂,但使用起来超简单的插件. ...
- Linux C 程序 GTK+图形界面编程(22)
GTK+图形界面编程 Linux大多是在字符界面,但也可以开发图形界面 目前已经存在多种Linux下开发图形界面的程序开发包:最常用的是Qt和GTK+ Qt是一个跨平台的图形界面开发库,不仅仅支持Li ...
- 不同浏览器的DNS超时重发机制(一)
一.Chrome浏览器(37.0.2062.124 m) 1.在Win7环境下,DNS超时重发的时间间隔为:2s.2s.2s.2s(在这个时刻重复发2个DNS请求).2s.4s,再经过大约14s左右, ...