• Java面向对象编程基础(二)


    上一节里我们讲到了常见的String类的用法,大家注意区分StringStringBuffer的异同。这一节我们讲解一下String类的常见方法、在编程过程中经常遇到的一些字符、数值之间的转换和数组。

    String类里包含了很多方法,大家可以去查询API了解一下。String类常见的有:

    charAt(int index)返回在index位置的元素

    contains(CharSequence s) 返回s是否在字符串的判断结果

    isEmpty()返回字符串是否为空的判断结果

    我们举一个contains(CharSequence s)的例子:

    public class LoveJava4_2

    {

    /**

     * @param args

     */

    public static void main(String[] args)

    {

    String str=new String("I can be there for you");

    System.out.println(str.contains("can"));

    System.out.println(str.contains("hello"));

    }

    }

    运行结果为:

    true

    false

    在实际的编程开发中,我们经常会碰见这样的情况,比如在中级教程图形界面编程GUI里,文本框JTextField一般只能用于显示字符串,那么如果我们想让它显示数值的时候,就会涉及到将数值转换为字符串的问题;反之,如果我们想获取文本框里面输入的数值,那么就首先得将文本框里的字符串转换为相应的数值。请看如下代码:

    String name=new String("Tom");

    String sex=new String("male");

    int age=20;

    String student=new String();

    现在,我想让Tom的信息以"Tom male 20"格式保存在一个String对象当中,并将之通过控制台显示出来,我们应该怎么做呢?

    因为这里的ageint类型的,故如果我们通过student=name+" "+sex+" "+age方式来完成对student进行赋值的话,编译器就会报错,因为age和其余三个变量不是相同的类型。这里,我们就需要引入Integer类,我们可以通过以下方式来完成操作:

    Student=name+" "+sex+" "+Integer.toString(age);

    那么,现在编译器就不会报错了,IntegertoString()方法将int类型的变量age转换成为了String类型的变量。

    现在如果age不再是int类型,而是String类型,我们想执行int birthday=2011-age,那又该怎么处理呢?接下来就要引入Integer类的另一个方法parseInt(),这个方法可以将String类型的变量转换成int类型。

    我们用以上的一个例子来程序实现:

    public class LoveJava4_2_2

    {

    /**

     * @param args

     */

    public static void main(String[] args)

    {

    String name=new String("Tom");

    String sex=new String("male");

    int age=20;

    String student=new String();

    student=name+" "+sex+" "+Integer.toString(age);

    System.out.println(student);

    }

    }

    运行结果:

    Tom male 20

    在数值运算中,对doublefloat类型的数据操作也可以采用类似方法,这里就不累述了。

    数组也是编程中经常用到的数据结构,数组可以是一维的,也可以是多维的。在实际编程中一维数组和二维数组用得比较多,下面我们简要介绍以下数组的基本使用方法。

    Java中数组的定义方法可以与C++里面一样,比如char array[],但是Java里还有一种特别的定义方法,即char[] array,这样的话,我们就可以把array理解为一个char数组类型的变量。然而,在数组的定义中还有另外一个重要的不同点,在Java中定义数组时不得设定其初始值大小比如int[10] array这样的定义方法编译器会报错。

    public class LoveJava4_2_3

    {

    /**

     * @param args

     */

    public static void main(String[] args)

    {

    String[] array=new String[]{"Tom","Jack","Tomy"};

    for(String str:array)

    {

    System.out.println(str);

    }

    }

    }

    运行结果:

    Tom

    Jack

    Tomy

  • 相关阅读:
    supervisord + docker run = web页面管理运行的docker
    docker之Dockerfile实践用dockerfile构建nginx环境
    Dockerfile文件详解
    【docker】CMD ENTRYPOINT 区别 终极解读!
    golang html/template
    网络连接带宽的理论最大值
    Queue length 和 Queue depth 的区别
    .tar.gz 文件和 .tar.xz 文件的区别
    如何同时在Isilon的所有网卡上抓取网络包?
    Reimage Isilon cluster,结果忘记了修改管理口的netmask,怎么办?
  • 原文地址:https://www.cnblogs.com/jeancandoit/p/2306696.html
Copyright © 2020-2023  润新知