我的Java学习《中国大学mooc》翁恺课程笔记(第三周)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了我的Java学习《中国大学mooc》翁恺课程笔记(第三周),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2715字,纯文字阅读大概需要4分钟。
内容图文
![我的Java学习《中国大学mooc》翁恺课程笔记(第三周)](/upload/InfoBanner/zyjiaocheng/642/d6b872063cca4645bde7539c3d1fa202.jpg)
**
对象容器
**
- 顺序容器
- 对象数组
- 集合容器(Set)
- Hash表
## 3.1 顺序容器
一般存放数据可以创建一个数组,数组是一种容器,因为数组的局限性,一旦创建无法改变其大小,我们可以使用顺序容器来解决。
引入一种顺序容器ArrayList:
package text;
import java.util.ArrayList;
public class NoteBook {
private ArrayList<String> notes = new ArrayList<String>();
//private int size = 0;
public void add(String s) {
notes.add(s);
//size++;
}
public void add(String s, int location) {
notes.add(location, s);
}
public int getSize() {
return notes.size();
}
public String getNote(int index) {
return notes.get(index);
}
public void removeNote(int index) {
notes.remove(index);
}
public String[] list() {
String[] a = new String[notes.size()];
// for (int i = 0; i < notes.size(); i++) {
// a[i] = notes.get(i);
// }
notes.toArray(a); //与上面的for循环功能相同
return a;
}
public static void main(String[] args) {
String[] a = new String[2];
a[0] = "first";
a[1] = "second";
NoteBook nb = new NoteBook();
nb.add("first");
nb.add("second");
nb.add("third", 1);
System.out.println(nb.getSize());
System.out.println(nb.getNote(0));
// 会引起异常
//System.out.println(nb.getNote(10));
System.out.println(nb.getNote(1));
nb.removeNote(1);
String[] arr = nb.list();
for (String str : arr) { //对数组名为arr的每一个元素str
System.out.println(str);
}
}
}
3.2 对象数组
对象中的每个元素都是对象的管理者而非对象本身。
当数组的元素的类型是类的时候,数组的每一个元素其实只是对象的管理者而不是对象本身。
因此,仅仅创建数组并没有创建其中的每一个对象。
集合容器(SET)
SET可以理解为数学中的集合。
所有的元素都具有唯一的值,元素在其中没有顺序。
3.3 Hash表
也叫散列表,是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。
在HashMap的双列集合中, 有K, V两个值, K是唯一的, 而V是可以重复的。多次存放value值,只会保存一个。
package date;
import java.util.HashMap;
import java.util.Scanner;
public class Coin {
private HashMap<Integer, String> coinnames = new HashMap<Integer, String>();
public Coin() {
coinnames.put(1, "penny");
coinnames.put(10, "dime");
coinnames.put(25, "quarter");
coinnames.put(50, "half-dollar");
coinnames.put(50, "五毛");
System.out.println(coinnames.keySet().size());
System.out.println(coinnames);
for (Integer k : coinnames.keySet()) {
String s = coinnames.get(k);
System.out.println(s);
}
}
public String getName(int amount) {
if (coinnames.containsKey(amount)) {
return coinnames.get(amount);
} else {
return "NOT FOUND";
}
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int amount = in.nextInt();
Coin coin = new Coin();
String name = coin.getName(amount);
System.out.println(name);
}
}
早睡早起我最棒
发布了3 篇原创文章 · 获赞 1 · 访问量 19
私信
关注
内容总结
以上是互联网集市为您收集整理的我的Java学习《中国大学mooc》翁恺课程笔记(第三周)全部内容,希望文章能够帮你解决我的Java学习《中国大学mooc》翁恺课程笔记(第三周)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。