类型能否转换有一个方法可以判断;视频中老师所出现的异常信息是类型转换异常,只要在能转换的*前提*下转换就行了,大家可以复制如下代码尝试
for (Object obj:coursesToSelected) {
if(obj instanceof Course){
Course c = (Course)obj;
System.out.println("课程:"+c.id+":"+c.name);
}else{
System.out.println(obj);
}
}
for (Object obj:coursesToSelected) {
if(obj instanceof Course){
Course c = (Course)obj;
System.out.println("课程:"+c.id+":"+c.name);
}else{
System.out.println(obj);
}
}
2016-07-25
集合中的元素,可以是任意类型的对象,如果把某个对象放入集合,则会忽略他的类型,把对象作为Object处理。泛型的出现,避免了集合在编译期间的输入错误。但是在运行期间,泛型就去泛型化了。也就是说,集合在运行期间,即使规定了集合的泛型,但是集合在运行期间并不会关注集合内对象的类型。所以集合在运行期间是去泛型化的。
2016-07-24
对于理解慢半拍的我来说,听两遍,再凭理解的记忆尝试敲敲,突然卡壳的话,又到回去看那处,顺便把老师的话当注释写上去。敲完后顺一顺发现,原来我还是有学Java的天赋的,不知算不算自我安慰。。像提到的运行时异常的方法initCause,不懂只能去找资料了。不懂的童鞋不怕麻烦的话,此法一试,先不讲把异常的知识点串联起来,这一节你是能懂的
2016-07-24
public class HelloWorld {
public static void main(String[] args) {
StringBuilder str = new StringBuilder();
str.append("jaewkjldfxmopzdm");
for (int i = str.length() -3, j = 0; i > j; i = i-3){
str.insert(i,",");
}
System.out.print(str.toString());
}
}
public static void main(String[] args) {
StringBuilder str = new StringBuilder();
str.append("jaewkjldfxmopzdm");
for (int i = str.length() -3, j = 0; i > j; i = i-3){
str.insert(i,",");
}
System.out.print(str.toString());
}
}
2016-07-24
//获取文件名中最后一次出现"."号的位置
int index = fileName.lastIndexOf(".");
// 获取文件的后缀
String prefix = fileName.substring(index+1, fileName.length());
if (fileName.indexOf(".") > 0 && prefix.equals("java")) {
System.out.println("Java文件名正确");
} else {
System.out.println("Java文件名无效");
}
int index = fileName.lastIndexOf(".");
// 获取文件的后缀
String prefix = fileName.substring(index+1, fileName.length());
if (fileName.indexOf(".") > 0 && prefix.equals("java")) {
System.out.println("Java文件名正确");
} else {
System.out.println("Java文件名无效");
}
2016-07-24