【java学习笔记02】特殊的“值的传递”
(1).String
// 基本数据类型->值传递(传递值)
// 引用数据类型->引用传递(传递地址)
// 特殊的引用传递String:因为是定长字符串,所以结果同值传递
public class TestString {
static void change(String a, StringBuffer b) {
a = "改变定长";
//b.append("改变变长");
b.replace(0, b.length(), "改变变长");
System.out.println(a);
System.out.println(b);
}
public static void main(String[] args) {
String a = new String("定长");
StringBuffer b = new StringBuffer("变长");
System.out.println(a);
System.out.println(b);
change(a, b);
System.out.println(a);
System.out.println(b);
/*
运行结果
定长
变长
改变定长
改变变长
定长
改变变长
*/
}
}
(2).交换对象
public class valuePKreference {
int a, b;
static void change(valuePKreference v1, valuePKreference v2) {
v1.a++;
v2.a++;
valuePKreference v3;
v3 = v1;
v1 = v2;
v2 = v3;
System.out.println("chang里面");
System.out.println("v1.a=" + v1.a);
System.out.println("v1.b=" + v1.b);
System.out.println("v2.a=" + v2.a);
System.out.println("v2.b=" + v2.b);
System.out.println("v3.a=" + v3.a);
System.out.println("v3.b=" + v3.b);
}
public static void main(String[] args) {
valuePKreference v1 = new valuePKreference();
v1.a = 1;
v1.b = 1;
valuePKreference v2 = new valuePKreference();
v2.a = 10;
v2.b = 10;
System.out.println("chang之前");
System.out.println("v1.a=" + v1.a);
System.out.println("v1.b=" + v1.b);
System.out.println("v2.a=" + v2.a);
System.out.println("v2.b=" + v2.b);
change(v1, v2);
System.out.println("chang之后");
System.out.println("v1.a=" + v1.a);
System.out.println("v1.b=" + v1.b);
System.out.println("v2.a=" + v2.a);
System.out.println("v2.b=" + v2.b);
}
}
/*
chang之前
v1.a=1
v1.b=1
v2.a=10
v2.b=10
chang里面
v1.a=11
v1.b=10
v2.a=2
v2.b=1
v3.a=2
v3.b=1
chang之后
v1.a=2
v1.b=1
v2.a=11
v2.b=10
*/
说明:
1.引用传递,所以change后a会增加
2.交换时交换的是新建的v1,,v2,v3所以能看见值的变化,但是源数据没有变化,即只交换了新建对象的指针指向,没有交换指向的数据
【java学习笔记01】swing入门
import java.awt.Color;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class swing {
public static void main(String[] args) {
JFrame frame = new JFrame("这里是标题");
frame.setTitle("设置标题");
//窗体初始位置 距左 距上 宽 高
frame.setBounds(100, 200, 900, 600);
//显示窗体
frame.setVisible(true);
//创建桌布,颜色
JPanel zhuobu = new JPanel();
//设置背景颜色
zhuobu.setBackground(Color.orange);
//关闭布局管理器(标签自动居中放置),自己决定位置
zhuobu.setLayout(null);
//把桌布放到桌子上
frame.setContentPane(zhuobu);
//插入图片对象
ImageIcon img=new ImageIcon("d:/p2.jpg");
//创建标签对象
JLabel picJLabel=new JLabel(img);
//把图片放到标签上(同构造方法)
//picJLabel.setIcon(img);
//标签位置 距窗体左 距上 宽 高
picJLabel.setBounds(100, 50, img.getIconWidth(),img.getIconHeight() );
//标签增加到桌布上
zhuobu.add(picJLabel);
//放置多个图片
ImageIcon img1=new ImageIcon("d:/p1.jpg");
JLabel[] pic=new JLabel[10];
for (int i = 0; i < pic.length; i++) {
pic[i]=new JLabel(img1);
pic[i].setBounds(i*img1.getIconWidth(), 0, img1.getIconWidth(), img1.getIconHeight());
zhuobu.add(pic[i]);
}
}
}
//f3 查看源文件
//ctrl+1 查看错误提示
//ctrl+shift+o 解决所有错误
//ctrl+o 显示文件成员(函数,变量……)
//ctrl+t 分层结构
ps:verycd旺旺老师
【看视频笔记02】北京圣思园Java就业培训整体课程介绍
【看视频笔记01】《编程方法》第一课 by YYeTs人人影视
《编程方法》是斯坦福大学开放课程中的一门课,感谢YYeTs提供翻译,国外老师的授课比国内好了无数倍,强烈推荐。
以下视频来自优酷:http://v.youku.com/v_show/id_XMjE4NzQ0NDI0.html
以下是我的笔记:
[05:00] 前五分钟是开场白,可以跳过
[06:03] 这门课被称为《编程方法》的原因是,它并不局限于某一门特定的编程语言,而是着重于软件开发的思想。思想或者说是思路才是最重要的。
[07:42] 这门课会主要使用Java进行讲解。
[11:00] 这门课(CS106A)会很轻松。CS105更轻松。CS106X是CS106A的快速版,进度很快。CS106B是CS106A的后续。
[15:52] 本课程的网址是http://www.stanford.edu/class/cs106a或者http://cs106a.stanford.edu
[21:10] 本课程一共有7次编程作业,复杂度依次增加。
[27:00] 讲了一大段评分标准,对我们来说没什么用。
[34:00] 上课还有糖吃……
[35:48] 不要共享代码 / 注明出处
[42:00] “Debug”这个名词的来例。
[45:45] 课程将使用Karel the Robot来讲解一些入门的编程知识。
第一课并没有讲多少和编程有关的东西,不过老师蛮风趣的,值得一看。
上文转自:http://leonax.net/
我突然发现看公开课程并记笔记是一个很好的学习方法,
希望,
下个学期,
每个星期至少看一集并记笔记吧!
课程网址:http://www.stanford.edu/class/cs106a/
这一节课的讲义下载地址:http://www.stanford.edu/class/cs106a/handouts/01-general-information.pdf
坚持,
加油!
我到底喜欢什么?
ps:首先感谢百度的自动保存草稿功能,让这篇写了一半的文章得以重见天日,年前连续在百度和博客园丢失了几篇文章,还好找回一篇。
正文:
刚才和星姐的一通交流突然让我惊了一下。
我到底喜欢什么?
这两天,我一直在学习php,一边学习,一边做学校的poj实时排名,现在已经有了初步模样,星姐说:“看你现在的热情,选专业应该选网络工程的,而不是软件工程”。
我愣了一下,我真的那么有激情吗?
去年寒假,也是这个时候,我还在学习CCNA,一开始也很有激情,借了很多书,并在培训机构认真听课。可是,寒假结束,我的CCNA之旅就画上了句号,书几乎再也没有翻开过,电脑里的Cisco Packet Tracer也再也没有启动过。。。
再往前,我曾经疯狂的迷过摄影,可是,短暂激情过后,只留下电脑里近50G的数码照片,大概八千张吧,现在,不仅好久不拍照了,放寒假居然把照相机丢在宿舍了。
回忆再往前,我的脑海里又浮现出好多做过的“傻”事情,做事的时候很执着,现在看来,真是浮云。
小学低年级,喜欢绘画,儿童画、中国画、素描一路学下来,作品最远曾被送至名古屋市展出,可是,昨天,小侄女的白板前,我连一只小猴子都画不出来;
小学高年级,热衷奥数,不是妈逼的,但是的确喜欢,也因此结识了不少好友,后来,最好的成绩是县里第一(叔叔曾经拿过县里数学竞赛第二,后来高考选了文科,现在摇身一变公务员了,衣食无忧)当然,数学竞赛对我最大的帮助是意外获得冬令营一等奖而可以离开县城,去市的好学校学习。
初中,我的数学居然不行了,初一是初赛出色决赛失手,到了初二,竟然连小奖也拿不到了,数学竞赛之路就此到了尽头。
初三时误打误撞,参加物理竞赛,意外拿到省二(班级前30名有机会参赛,我排32,其他班报名未满,我就替补了,考得也不怎么好,不知道最后卷子怎么改的),后来到物理就不行了,大学物理上下都是60+的低空成绩。。。
高中三年基本在浪费时间中度过,再次也就不提了。。。写到这里已经偏题很远了
重新回来,写个总结:
1)不同时代,我取得过一些暂时性的成绩(这里面甚至可以包括足球,游戏方面),但是,我会突然停止,然后,甚至退化得非常严重。
2)“瘦死的骆驼比马大”这一句话在我身上完全不适用,我堕落的速度和程度都是惊人的。
3)“我到底喜欢什么”,这个最初的标题,我思考不出一个持久的答案。暂时的答案是:???
