为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
Java入门第三季_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

Java入门第三季

陈码农
难度入门
时长 5小时 0分
  • tring 对象创建后则不能被修改,是不可变的,所谓的修改其实是创建了新的对象,所指向的内存空间不同。 1、 通过 String s1="爱慕课"; 声明了一个字符串对象, s1 存放了到字符串对象的引用,常量字符串存储在堆内存中,s1只是对存放了到字符串的引用,通过 s1="欢迎来到:"+s1; 改变了字符串 s1 ,其实质是创建了新的字符串对象,变量 s1 指向了新创建的字符串对象,即使s1指向了另一块堆内存。 2、 一旦一个字符串在内存中创建,则这个字符串将不可改变。如果需要一个可以改变的字符串,我们可以使用StringBuffer或者StringBuilder(后面章节中会讲到)。 3、 每次 new 一个字符串就是产生一个新的对象,即便两个字符串的内容相同,使用 ”==” 比较时也为 ”false” ,如果只需比较内容是否相同,应使用 ”equals()” 方法
    查看全部
  • 那么,“==” 和 equals() 有什么区别呢? ==: 判断两个字符串在内存中首地址是否相同,即判断是否是同一个字符串对象 equals(): 比较存储在两个字符串对象中的内容是否一致 PS:字节是计算机存储信息的基本单位,1 个字节等于 8 位, gbk 编码中 1 个汉字字符存储需要 2 个字节,1 个英文字符存储需要 1 个字节。所以我们看到上面的程序运行结果中,每个汉字对应两个字节值,如“学”对应 “-47 -89” ,而英文字母 “J” 对应 “74” 。同时,我们还发现汉字对应的字节值为负数,原因在于每个字节是 8 位,最大值不能超过 127,而汉字转换为字节后超过 127,如果超过就会溢出,以负数的形式显示。(关于编码,我们在后面课程中会详细介绍,小小期待哦~~)
    查看全部
  • tring s1;申明一个string类型的s1,即没有在申请内存地址,更没有在内存任何指向引用地址; String s2=null;申明一个string类型的s2,同时在内存里申请了一个地址,但是该地址不指向任何引用地址; String s3="";申明一个string类型的s3,既在内存里申请了地址,该地址又指向一个引用该字符串的引用地址; String s4=new String();同理s3; 虽然new String()与""值一样,但是内存地址不一样。 一般来说 字符串的使用 最好用String str = "";语句,可以防止后面的程序因引用地址混乱而找不到的异常!String s = null;String s;劲量少用!能不用就不要使用!
    查看全部
  • 1. 字符串 str 中字符的索引从0开始,范围为 0 到 str.length()-1 2. 使用 indexOf 进行字符或字符串查找时,如果匹配返回位置索引;如果没有匹配结果,返回 -1 3. 使用 substring(beginIndex , endIndex) 进行字符串截取时,包括 beginIndex 位置的字符,不包括 endIndex 位置的字符
    查看全部
  • Java集合框架
    查看全部
  • 1. 使用 format() 方法将日期转换为指定格式的文本 2. 使用 parse() 方法将文本转换为日期
    查看全部
  • public void testForEach(){ System.out.println("有如下课程待选:(通过foreach访问)"); for(Object obj:coursesToSelect){ Course cr = (Course) obj; System.out.println("课程:"+cr.id+":"+cr.name); } } public void testIterator(){ Iterator it = coursesToSelect.iterator(); System.out.println("有如下课程待选:(通过迭代器访问)"); while(it.hasNext()){ Course cr = (Course)it.next(); System.out.println("课程:"+cr.id+":"+cr.name); public void testGet(){ int size = coursesToSelect.size(); System.out.println("有如下课程待选:"); for(int i=0;i<size;i++){ Course cr=(Course)coursesToSelect.get(i); System.out.println("课程:"+cr.id+":"+cr.name); }
    查看全部
  • Set中的元素是无序的并且不可重复,HashSet-哈希集,是Set的一个重要 实现类 Set可以添加一个空对象null。
    查看全部
  • 带有泛型<Course>的List类型属性。 public List<Course> courses; public TestGeneric(){ this.courses=new ArrayList<Course>(); }
    查看全部
  • // 使用foreach循环输出数组中的元素 for (类型 变量名 : 需要遍历的数组名) { System.out.print(变量名 + " "); }
    查看全部
  • 泛型:
    查看全部
  • public void testSort3(){ List<String>stringList = new ArrayList<String>(); String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; StringBuilder stb = new StringBuilder(); String st = null; //设置st局部变量 for(int i = 0;i<10;i++){ do{ int n = random.nextInt(10)+1; //获取随机数1~10; for(int j = 0;j<n;j++){ int m = random.nextInt(str.length()); //获取随机字符 stb.append(str.charAt(m)); //这里获取的是字符 } st = stb.toString(); //stb字符转换为字符串赋给string类型的st }while(stringList.contains(st)); stringList.add(st); stb.delete(0, str.length()); //清除StringBuilder里面所有的字符 如果不清除,它会叠加字符 } System.out.println("--------------------排序前------------------"); for(String st1 : stringList){ System.out.println("元素:"+st1); } Collections.sort(stringList); System.out.println("--------------------排序后------------------"); for(String st1 : stringList){ System.out.println("元素:"+st1); } }
    查看全部
  • public class CollectionsTest { public void testSort2() { List<String> list = new ArrayList<String>(); Random random = new Random(); //s是包含所有字符的字符串 String s = "01234ABCmopqDEFGnKNO579PQRSTUVW6XYZabcdHIJefghijklrstLMwx8yz"; //循环10遍(生成10个字符串) for(int i = 0; i < 10; i++) { String news = ""; //设置一个10以内随机的整数 int k = random.nextInt(10); //字符串长度为随机数k for(int j = 0; j < k; j++) { news += s.charAt(random.nextInt(s.length())); } list.add(news); System.out.println("添加对象:" + news); } System.out.println("---------排序前---------"); for (String string : list) { System.out.println("元素:" + string); } Collections.sort(list); System.out.println("---------排序后---------"); for (String string : list) { System.out.println("元素:" + string); } } public static void main(String[] args) { CollectionsTest ct = new CollectionsTest(); ct.testSort2(); }
    查看全部
  • 其中,基本类型转换为字符串有三种方法: 1. 使用包装类的 toString() 方法 2. 使用String类的 valueOf() 方法 3. 用一个空字符串加上基本类型,得到的就是基本类型数据对应的字符串 再来看,将字符串转换成基本类型有两种方法: 1. 调用包装类的 parseXxx 静态方法 2. 调用包装类的 valueOf() 方法转换为基本类型的包装类,会自动拆箱
    查看全部
  • ry...catch...finally...三个语句块中如果有return语句的执行顺序。finally中有return用finally.return代替,顺序为“try语句 -> catch -> finally -> finally.return -> catch.return -> try.return”,没有相应的阶段请忽略该阶段,任何阶段的return被执行,则整个语句块结束。
    查看全部

举报

0/150
提交
取消
课程须知
此部分为 Java 课程的进阶内容,适合具有一定 Java 基础的伙伴们学习,如果您是新手,建议您移步 《Java入门第一季》 和 《Java入门第二季》,在理解并掌握面向对象相关知识后再回来进修。
老师告诉你能学到什么?
本课程将学习 Java 中的异常处理、集合框架、字符串、常用类等,逐步学习掌握 Java 高级技术。
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!