零度非安全 发表于 2017-2-25 12:17:27

【Java 教程(原创)】022.参数传值——基本数据类型参数的传值

本帖最后由 零度非安全 于 2017-3-5 14:28 编辑

点击图片穿越到 索引帖,听说有惊喜!







在开始之前,我要跟大家说一下,从第 21 讲开始就停了半个月之久

原因是回学校后忙着整理自己手头上的一些事,当我看到我们这学期的课表的时候
我也懵了,比以前的上的课要多好多,顺便在这里我透露下我的课表{:5_92:}







从上面看到一星期基本满课,课表空白的地方不是很多

只有晚上和周末有时间,以后这系列和 Java 每周一练系列(点我

订阅) ,我打算把它们移到周末统一更新

因为我不会忘记你们这群可爱的鱼油们 ^_^!!!
****************************************************************
*                           订阅走一波,从此不迷路                           *
*                                                                                          *
*                        【Java 教程(原创)】系列                         *
*                                                                                             *
*                           Java 小练习(每周一练)                        *
*                                                                                             *
*                                 Java 正则表达式                                  *
*****************************************************************
好了,在这里我也不扯淡啦,我们直接切入主题,让我们先来看一段引用。

当方法被调用时,如果方法有参数,参数必须要实例化,即参数变量必须有具体的值,在 Java 中,方法的所有参数都是“传值”的,也就是说,方法中参数变量的值是调用者指定值的一个副本。例如,如果向方法的 int 型参数 x 传递一个 int 值,那么参数 x 得到的值是传递值的一个副本。因此,如果方法改变参数的值,不会影响向参数“传值”的变量的值,反之亦然。参数得到的值,类似生活中“原件”的“复印件”,那么改变“复印件”不影响“原件”,反之亦然。
对于基本数据类型参数的传值,我还是举个栗子来说明比较清楚:

Rect.java
public class Rect{                      //创建矩形的类
   
    double width,height,area;
   
    void setWidth(double width){
      if(width > 0){
            this.width = width;
      }
    }
   
    void setHight(double height){
      if(height > 0){
            this.height = height;
      }
    }
   
    double getWidth(){
      return width;
    }
   
    double getHeight(){
      return height;
    }
   
    double getArea(){
      area = width * height;
      return area;
    }
   
}
RectOperation.java
public class RectOperation{                     //主类
   
    public static void main(String[] args){
      Rect rect = new Rect();
      double w = 12.76,h = 25.28;
      rect.setWidth(w);
      rect.setHight(h);
      System.out.println("矩形对象的宽:" + rect.getWidth() + "高:" + rect.getHeight());
      System.out.println("矩形的面积:" + rect.getArea());
      System.out.println("更改向对象的方法参数传递值的 w、h 变量的值为 100 和 256");
      w = 100;
      h = 256;
      System.out.println("矩形对象的宽:" + rect.getWidth() + "高:" + rect.getHeight());
    }
   
}
关于以上代码的一些说明:





对于基本数据类型的参数,向该参数传递的值的级别不可以高于该参数的级别。例如,不可以向 int 型参数传递一

个 float 值,但可以向 double 型参数传递一个 float 值。在上面这个栗子中,有 2 个源文件,即 Rect.java 和

RectOperation.java。其中,Rect.java 中的 Rect 类负责创建矩形对象,RectOperation.java 是含有主类的应用

程序。在主类的 main 方法中使用 Rect 类来创建矩形对象,该矩形对象可以调用 setWidth(double width) 设置

自己的宽,调用 setHeight(double height) 设置自己的高,因此,矩形对象在调用 setWidth(double width) 或

setHeight(double height) 方法时,必须向方法的参数传递值。




程序运行如下:



【特别注意】贴子中的栗子希望鱼油们能自觉的手动敲上去,不要单纯的复制粘贴保存,然后编译运行。



☞点我前往上一讲☜
☞点我前往下一讲☜



摆渡终极鉴黄师 发表于 2017-2-26 10:42:49

{:10_279:}今天又将是充实的一天

摆渡终极鉴黄师 发表于 2017-2-26 10:45:17

感谢ヾ(≧∪≦*)ノ〃

零度非安全 发表于 2017-2-26 10:48:29

摆渡终极鉴黄师 发表于 2017-2-26 10:45
感谢ヾ(≧∪≦*)ノ〃

欢迎 摆渡终极鉴黄师 童鞋前来学习!!!

逍遥侯 发表于 2017-2-26 13:42:14

来收INT

零度非安全 发表于 2017-2-26 13:48:29

逍遥侯 发表于 2017-2-26 13:42
来收INT

这是啥意思???

请不要回复一些无意义的话

小小七 发表于 2017-2-28 10:23:56

{:9_228:}楼主还是学生就这么厉害了。。。。

名门青衣 发表于 2017-3-21 10:33:37

很好 很强大,,,希望斑竹多搞一些java练习题目,,新手长期关注...

零度非安全 发表于 2017-3-21 11:14:44

名门青衣 发表于 2017-3-21 10:33
很好 很强大,,,希望斑竹多搞一些java练习题目,,新手长期关注...

java练习题目

http://bbs.fishc.com/forum.php?mod=collection&action=view&ctid=552&fromop=my

点上面订阅

dongyuguo6 发表于 2017-4-28 10:44:54

楼主暴露自己学校了。{:5_97:}

ShaunSS 发表于 2017-5-23 19:14:10

学习了。
另,Rect.java11行 setHeight 少了个e

零度非安全 发表于 2017-5-23 21:15:20

ShaunSS 发表于 2017-5-23 19:14
学习了。
另,Rect.java11行 setHeight 少了个e

并没有哦,这个要与 RectOperation.java 中相对应撒~~~~~

夕颜梦雨 发表于 2018-3-23 22:09:57

就剩5节就看完了,期待更新
页: [1]
查看完整版本: 【Java 教程(原创)】022.参数传值——基本数据类型参数的传值