java基础——参数的应用
命令行传递参数(少用)
有时候,你希望运行一个程序时,在传递给它信息。这个时候,要靠 传递命令行
参数 给main()函数实现。
package com.dong.method;
public class Demo03 {
public static void main(String[] args) {
//args.length 数组长度
for (int i =0;i<args.length;i++) {
System.out.println("args["+ i +"]"+ args[i]);
}
}
}
在用命令行执行时,必须找到报的路径:
在com的上一级目中,执行命令行:
java com.dong.method.Demo03
可变参数(不定向参数)
在JDK1.5之后,支持传递同类型的可变参数给一个方法
在方法声明中,在指定参数类型后加一个省略号(...)
一个方法中,只能指定一个可变参数,它必须是方法的最后一个参数,任何普通的参数都必须在他之前声明。
public class Demo04 {
public static void main(String[] args) {
printMax(23,34,45,45.2,65.3);
printMax(23,23.3);
}
// 有static可以直接调用,否则:
// Demo04 demo04 = new Demo04();
// demo04.printMax();
public static void printMax(double... numbers){
if (numbers.length == 0){
System.out.println("no numbers passed");
return;
}
double result = numbers[0];
// 排序
for (int i = 1; i < numbers.length; i++) {
if (numbers[i]>result){
result = numbers[i];
}
}
System.out.println(" The max Value is:" + result);
}
}
递归
A方法调用A方法自己。就是自己调用自己。
作用:1. 复杂问题简单化,就是将一个复杂的问题转化为一个与原问题相似的规模较小的问题来求解,只需要少量的程序就能解决复杂的计算,
递归部分包括两个部分:
递归头:什么时候不调用自己方法。如果没有头,将陷入死循环。(结束条件)
递归体:什么时候需要调用自己方法
public class Demo06 {
public static void main(String[] args) {
Demo06 demo06 = new Demo06();
int n = demo06.f(10);
System.out.println(n);
}
//计算5!
public int f(int i){
if (i == 1){
return 1;
}else{
return i*f(i-1);
}
}
}
java基础——参数的应用的更多相关文章
- 067 01 Android 零基础入门 01 Java基础语法 08 Java方法 05 数组作为方法参数
067 01 Android 零基础入门 01 Java基础语法 08 Java方法 05 数组作为方法参数 本文知识点:数组作为方法参数 说明:因为时间紧张,本人写博客过程中只是对知识点的关键步骤进 ...
- java基础:所有参数皆是按值参数
c#中对于参数的传递,有二种处理方式,默认情况下:值类型的参数,按值传递(即:方法体内的参数是原值的副本):引用类型的参数,"加ref关键字后“,按引用传递(即:方法体内的参数,是对象的指针 ...
- java基础-java与c#的可变参数
正文 可变参数,必须最为参数的最后一个参数:可变参数只能有一个: c#可变参数例子: class Program { static void Main(string[] args) { T ...
- [Java面经]干货整理, Java面试题(覆盖Java基础,Java高级,JavaEE,数据库,设计模式等)
如若转载请注明出处: http://www.cnblogs.com/wang-meng/p/5898837.html 谢谢.上一篇发了一个找工作的面经, 找工作不宜, 希望这一篇的内容能够帮助到大 ...
- 【JAVA面试题系列一】面试题总汇--JAVA基础部分
JAVA基础 基础部分的顺序: 基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法 线程的语法,集合的语法,io 的语法,虚拟机方面的语法 每天几道,持续更新!! 1.一个". ...
- java基础练习 字符串,控制流,日历,日期等
1,对基本控制流程的一些练习 package org.base.practice3; import org.junit.Test; /** * Created with IntelliJ IDEA. ...
- Java基础知识【上】(转载)
http://blog.csdn.net/silentbalanceyh/article/details/4608272 (最终还是决定重新写一份Java基础相关的内容,原来因为在写这一个章节的时候没 ...
- java基础知识小总结【转】
java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...
- 微冷的雨Java基础学习手记(一)
使用Java理解程序逻辑 之凌波微步 船舶停靠在港湾是很安全的,但这不是造船的目的 北大青鸟五道口原玉明老师出品 1.学习方法: 01.找一本好书 初始阶段不适合,可以放到第二个阶段,看到知识点时,要 ...
随机推荐
- 灵魂拷问!浏览器输入「xxxxhub」的背后.....
Hey guys 各位读者姥爷们大家好,这里是程序员 cxuan 计算机网络连载系列的第 13 篇文章. 到现在为止,我们算是把应用层.运输层.网络层和数据链路层都介绍完了,那么现在是时候把这些内容都 ...
- windows平台rust安装
1.安装目录环境变量 RUSTUP_HOME D:\WorkSoftware\Rust\cargo CARGO_HOME D:\WorkSoftware\Rust\rustup 2.安装下载加速环境变 ...
- [源码解析] 分布式任务队列 Celery 之启动 Consumer
[源码解析] 分布式任务队列 Celery 之启动 Consumer 目录 [源码解析] 分布式任务队列 Celery 之启动 Consumer 0x00 摘要 0x01 综述 1.1 kombu.c ...
- Prometheus联邦
联邦使得一个 Prometheus 服务器可以从另一个 Prometheus 服务器提取选定的时序. 1. 使用场景 Prometheus 联邦有不同的使用场景.通常,联邦被用来实现可扩展的 Prom ...
- 一文带你剖析LiteOS互斥锁Mutex源代码
摘要:多任务环境下会存在多个任务访问同一公共资源的场景,而有些公共资源是非共享的临界资源,只能被独占使用.LiteOS使用互斥锁来避免这种冲突,互斥锁是一种特殊的二值性信号量,用于实现对临界资源的独占 ...
- OO_Unit1_表达式求导总结
OO_Unit1_表达式求导总结 OO的第一单元主要是围绕表达式求导这一问题布置了3个子任务,并在程序的鲁棒性与模型的复杂度上逐渐升级,从而帮助我们更好地提升面向对象的编程能力.事实也证明,通过这 ...
- Java性能调优实战,覆盖80%以上调优场景
Java 性能调优对于每一个奋战在开发一线的技术人来说,随着系统访问量的增加.代码的臃肿,各种性能问题便会层出不穷. 日渐复杂的系统,错综复杂的性能调优,都对Java工程师的技术广度和技术深度提出了更 ...
- Leedcode算法专题训练(树)
递归 一棵树要么是空树,要么有两个指针,每个指针指向一棵树.树是一种递归结构,很多树的问题可以使用递归来处理. 1. 树的高度 104. Maximum Depth of Binary Tree (E ...
- Java第三章基础学习课后题练习
小结:final 类型 变量名 = 数值 定义常量使用 变量的原则*** 一定要"先声明,后使用",变量使用前必须先声明.这点就没php好玩:两种键盘输入方式InputStream ...
- Linux入门之基本的概念、安装和操作
目录 Linux基本概念 Linux的安装 虚拟机安装CentOS7 CentOS设置网络 Linux基本操作命令 文件目录操作命令 进程操作命令 文本操作命令 Linux权限操作 用户和组操作命令 ...