Java学习历程之----进阶篇(十二)

千禧难题之三:

       庞加莱(Poincare)猜想:如果我们伸缩围绕一个苹果表面的橡皮带,那么我们可以既不扯断它,也不让它离开表面,使它慢慢移动收缩为一个点。另一方面,如果我们想象同样的橡皮带以适当的方向被伸缩在一个轮胎面上,那么不扯断橡皮带或者轮胎面,是没有办法把它收缩到一点的。我们说,苹果表面是"单连通的",而轮胎面不是。大约在一百年以前,庞加莱已经知道,二维球面本质上可由单连通性来刻画,他提出三维球面(四维空间中与原点有单位距离的点的全体)的对应问题是否也成立呢?2003年俄罗斯数学家佩雷尔曼最终解决了三维庞加莱猜想成立,Clay数学研究所在2010年为此召开特别会议,为此猜想盖棺定论。这也是唯一一个迄今为止被解决的千禧难题。  

科普

知识

前言

     上周我们初步学习的Java包装类的装箱和拆箱,Java1.5之后系统可以进行自动装箱拆箱,但在之前,必须进行手工操作,本周我们学习几个常见包装类的应用和Java所有类的父类Object类。

一、Int类和Integer类的相互转换

     可以通过 Integer 类的构造方法将 int 装箱,通过 Integer 类的 intValue 方法将 Integer 拆箱。如下:

class Rextester {
    public static void main(String[] args) {
        int m = 99;
        Integer num = new Integer(m);  // 手动装箱
        int n = num.intValue();  // 手动拆箱
        System.out.println("n = " + n);       
        Integer num1 = new Integer(m);
        System.out.println("num等价于num1的返回结果为" + num.equals(num1));
    }
}

 

注意将手动装拆箱与上周学习的自动装拆箱对比,看看有什么差别。

二、将字符串转换为数值类型

 将字符串转换为数值类型有两种方法:

    ① String型转为int型

          int parseInt(String s)

    ② String型转为float型

          Float parseFloat(String s)

class Rextester {
    public static void main(String[] args) {
        String str1 = "23";
        String str2 = "23.1";        
        int x = Integer.parseInt(str1);// 将字符串变为int型        
        float f = Float.parseFloat(str2);// 将字符串变为float型
        System.out.println("x = " + x + "\nf = " + f);
    }
}

三、将整数转换为字符串

      Integer 类有一个静态的 toString() 方法,可以将整数转换为字符串。例如:

class Rextester {
    public static void main(String[] args) {
        int m = 456;
      int n = 789;
      int sum = m+n;
        String x = Integer.toString(m);
      String y = Integer.toString(n);
      System.out.println("以数值形式输出m+n:" +sum);
        System.out.println("以字符串形式输出x+y:" + x+y);
    }
}

四、Java  Object类

      Object 是 Java 类库中的一个特殊类,也是所有类的父类。也就是说,Java 允许把任何类型的对象赋给 Object 类型的变量。当一个类被定义后,如果没有指定继承的父类,那么默认父类就是 Object 类。即下面两行代码是等价的:

public class MyClass{…}
public class MyClass extends Object {…}//Java中继承的关键字为extend,后面我们会具体学习一下。

      Java 所有的类都是 Object 类的子类,所以任何 Java 对象都可以调用 Object 类的方法。常见的方法如下表所示:

public class Person {
    private String name;
    private int age;
    public Person(String name, int age) {//定义带两个参数的构造方法
        this.name = name;
        this.age = age;
    }
    public String toString() {
        return "姓名:" + this.name + ":年龄" + this.age;
    }
    public static void main(String[] args) {
        Person per = new Person("IT进阶之旅", 1);// 实例化Person对象
        System.out.println("对象信息:" + per);// 输出对象调用toString()方法
    }
}

      toString()方法是返回该对象的字符串,程序中的Person类中重写了Object类中的toString()方法,这样直接输出对象时调用的是被子类重写过的toString()方法。(ps:大家可以自己调试一下代码,小编的电脑暂时还没回来。。。。)

小编有话说

      清明追思,家国永念,向抗疫英雄致敬,疫情还未结束,不要掉以轻心。愿逝者安息,生者奋发;愿山河无恙,你我皆安。最后以一首清明诗结束本周的学习。

清明

唐 · 杜牧

清明时节雨纷纷,路上行人欲断魂。

借问酒家何处有?  牧童遥指杏花村。

编辑:玥怡居士|审核:世外居士

往期精彩回顾

Java学习历程之----进阶篇(十一)
Java学习历程之————进阶篇(十)
Java学习历程之————进阶篇(九)

IT进阶之旅

扫码关注我们

我就知道你在看!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值